aboutsummaryrefslogtreecommitdiff
path: root/web/views/icon.py
blob: 895b47404806e0a81d65397d7066ce8fb496fb7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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