0

我有一个动态 css 文件,它使用由请求生成的 font-face 加载字体,并且我正在明确设置内容标题。就本地主机(网络选项卡中的文本/css)的mime类型而言,这一切都运行良好,除了字体不是在chrome中加载而是在firefox中工作。但这是一个不同的问题,所以现在我将代码放在 openshift 上,魔术响应有一个 text/html 标题。我在这里想念什么?

resp = make_response(render_template('webfonts.css', fonts=fonts))
            resp.headers.add('content-type', 'text/css')
            return resp

这是烧瓶代码。

这是网址

http://flaskexample-diadara.rhcloud.com/api/webfonts?font=LohitGujarati

4

1 回答 1

0

我遇到了同样的问题(使用 Flask 内置服务器)并且也遇到了您的问题,我发现了以下问题:

虽然可以在其他地方找到添加标头作为推荐的解决方案,但它实际上并没有在 Response 对象中设置属性之一(如果您考虑一下,这实际上是有道理的)使服务器仍然发送默认的 text/html 标头。

我发现它的工作方式是这样的:

response = Response(render_template('css/' + filename), mimetype='text/css')

return response 

你也应该这样做

from flask import Response
于 2013-08-18T14:22:07.593 回答