Flask:通过Response对象发送数据和状态代码
我正在Flask中编写通过API相互交互的微服务。
在发出POST请求时,我能够通过Response对象返回状态代码。有什么方法可以从此函数作为JSON返回数据?
from flask import Flask, Response@app.route('/login', methods=['POST'])
def login():
# Set the status code
response = Response(status=200)
# How can I return a JSON in my response object as {'username': 'febin'} ?
return response
回答:
只需使用flask包中的jsonify()
即可。此方法采用任何可序列化的数据类型(例如,在以下示例中,我使用了字典数据)。
from flask import jsonify@app.route('/login', methods=['POST'])
def login():
data = {'name': 'nabin khadka'}
return jsonify(data)
要返回状态码,只需在返回的末尾返回即可,如下所示:
return jsonify(data), 200
更新
从flask v1.1开始,return语句将jsonify在第一个返回值中自动创建一个字典。所以你可以简单地使用
return data, 200
请注意,默认值为200。
以上是 Flask:通过Response对象发送数据和状态代码 的全部内容, 来源链接: utcz.com/qa/429875.html