flask response Content-Type

flask中通过response对象的headers属性来控制header信息。

1.控制mimetype

from flask import Flask,make_response
app = Flask(__name__)

@app.route('/')
def register():
    rsp = make_response("test")
    rsp.headers['Content-Type']= 'text/xxx'
    return rsp

if __name__ == "__main__":
    app.run(host="0.0.0.0",port=5000,debug=True)

在这里插入图片描述

2.控制charset

from flask import Flask,make_response
app = Flask(__name__)

@app.route('/')
def register():
    rsp = make_response("test")
    rsp.headers['Content-Type']= 'text/xxx; charset=utf-8'
    return rsp

if __name__ == "__main__":
    app.run(host="0.0.0.0",port=5000,debug=True)

在这里插入图片描述

3.通过Responsemimetype属性快捷控制Content-Type
需要注意的是mimetype属性不能控制charset,一般charset会使用默认值

from flask import Flask,make_response

app = Flask(__name__)

@app.route('/')
def register():
    rsp = make_response("xxx")
    rsp.mimetype="text/xxx" # 等价于rsp.headers['Content-Type']= 'text/xxx; charset=utf-8'
    return rsp

if __name__ == "__main__":
    app.run(host="0.0.0.0",port=5000,debug=True)

参考:
https://flask.palletsprojects.com/en/1.1.x/api/#response-objects
https://flask.palletsprojects.com/en/1.1.x/api/#flask.Flask.make_response
https://werkzeug.palletsprojects.com/en/1.0.x/datastructures/#werkzeug.datastructures.Headers

你可能感兴趣的:(Python,python)