aboutsummaryrefslogtreecommitdiff
path: root/src/web/views/icon.py
blob: 64e54cabae70fa7ec5c64a82f39dbfff62fa8d05 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import base64
from flask import Blueprint, Response, request
from web.controllers import IconController
from web.lib.view_utils import etag_match

icon_bp = Blueprint('icon', __name__, url_prefix='/icon')


@icon_bp.route('/', methods=['GET'])
@etag_match
def icon():
    icon = IconController().get(url=request.args['url'])
    headers = {'Cache-Control': 'max-age=86400',
               'Content-Type': icon.mimetype}
    return Response(base64.b64decode(icon.content), headers=headers)
bgstack15