首页 > 解决方案 > 如何将请求和响应“Content-Type”设置为“application/json;charset=UTF-8”?

问题描述

在 flask restful 中,基于开放 API 规范,我需要确保请求的标头Content-Type设置为application/json;charset=UTF-8,这意味着输入请​​求是 JSON 并以 UTF-8 编码。

我可以使用以下代码检查 JSON:

if request.is_json:
    do some thing

但是,我怎样才能确保请求和响应被UTF-8编码并且输出也应该是application/json;charset=UTF-8

标签: pythonjsonrequesthttpresponseflask-restful

解决方案


您可以使用 jsonify 创建响应

from flask import Flask, jsonify
...

然后你可以改变一些http属性

response = jsonify({"status": "ok" })
response.status_code = 200
response.headers["Content-Type"] = "application/json; charset=utf-8"
return response

推荐阅读