当前位置: 首页 > 面试题库 >

发送带有Flask响应的JSON和状态代码

古彦
2023-03-14
问题内容

我知道我可以使用设置响应的状态码Response(status=200)。设置状态代码时如何返回JSON数据?

from flask import Flask, Response

@app.route('/login', methods=['POST'])
def login():
    response = Response(status=200)
    # need to set JSON like {'username': 'febin'}
    return response

问题答案:

使用flask.jsonify()。此方法采用任何可序列化的数据类型。例如data,在以下示例中,我使用了字典。

from flask import jsonify

@app.route('/login', methods=['POST'])
def login():
    data = {'name': 'nabin khadka'}
    return jsonify(data)

要返回状态码,请返回响应和代码的元组:

return jsonify(data), 200

请注意,默认状态代码为200,因此无需指定该代码。

更新

Flask 1.1开始 ,return语句将jsonify在第一个返回值中自动创建一个字典。您可以直接返回数据:

return data

您还可以使用状态代码返回它:

return data, 200


 类似资料:
  • 当我使用MVC控制器时,我使用“返回OK(对象)”或“返回BadRequest(ErrorMessage)”等。 我怎样才能实现这是剃刀页? 我尝试返回新的JSON result(object);这在状态代码为200时有效。但是如果我想返回带有JSON错误消息的状态代码400呢?

  • 作为参考,我研究了以下三个问题: 从Flask视图返回JSON响应 使用Flask响应发送JSON和状态代码 返回请求。来自 Flask 的响应对象 如标题所示,我试图从flask post方法返回一个JSON响应。烧瓶路径如下: 在我的web应用程序中,我希望将< code>session-token存储在cookies中的什么位置(目前)。 目前在web端,我有以下代码: 其中 由。鉴于上面列

  • 问题内容: 我正在Flask中编写通过API相互交互的微服务。 在发出POST请求时,我能够通过Response对象返回状态代码。有什么方法可以从此函数作为JSON返回数据? 问题答案: 只需使用flask包中的即可。此方法采用任何可序列化的数据类型(例如,在以下示例中,我使用了字典数据)。 要返回状态码,只需在返回的末尾返回即可,如下所示: 更新 从flask v1.1开始,return语句将j

  • 问题内容: 我试图按照此链接中的建议将错误返回到对控制器的调用,以便客户端可以采取适当的措施。javascript通过jqueryAJAX调用控制器。仅在不将状态设置为error的情况下,我才可以重新获得Json对象。这是示例代码 如果没有设置状态码,我会得到Json。如果设置状态代码,则会返回状态代码,但不会返回Json错误对象。 更新 我想将Error对象作为JSON发送,以便可以处理ajax

  • 我正在寻找在我的. NET Core Web API控制器中返回带有HTTP状态代码的JSON的正确方法。我过去是这样使用它的: 这是一个4.6 MVC应用程序,但现在有了。NET Core我似乎没有这个IHttpActionResult,我有ActionResult,使用如下: 但是服务器的响应很奇怪,如下图所示: 我只希望Web API控制器返回JSON和HTTP状态代码,就像我在Web AP