【问题标题】:Flask fails to add custom headersFlask 无法添加自定义标头
【发布时间】:2020-08-24 05:45:32
【问题描述】:

我正在尝试返回这样的自定义标头:

@app.route("/generate", methods=['POST'])
def generate():
    # data is generated here
    resp = Response(jsonify(data))
    resp.headers['Access-Control-Allow-Origin'] = '*'
    resp.headers['Access-Control-Allow-Credentials'] = True
    return resp

但它们似乎没有出现在输出中。 如here 所述,将状态代码更改为 201 也无济于事(我通过将 status=201 添加到 Responce 构造来做到这一点。

任何帮助将不胜感激。

编辑 1: 在代码中添加了一些内容。 here 描述的解决方案对我也不起作用。尝试了Responsemake_response,按照建议添加了@app.after_request - 没有效果。 唯一存在的标题是:

'Content-Type': 'application/json', 
'Content-Length': '113', 
'Server': 'Werkzeug/1.0.1 Python/3.7.7', 
'Date': 'Fri, 08 May 2020 17:05:38 GMT'

【问题讨论】:

标签: python http flask


【解决方案1】:

我认为问题在于,尽管您添加了自定义标头,但您仍然返回一个 JSON 对象,您在其中编写 resp = Response(jsonify(data))。 Flask 可能会根据响应正文的格式自动分配响应标头。

【讨论】:

    猜你喜欢
    • 2018-02-26
    • 1970-01-01
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 2013-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多