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

Flask:通过Response对象发送数据和状态代码

壤驷德寿
2023-03-14
问题内容

我正在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。



 类似资料:
  • 问题内容: 我知道我可以使用设置响应的状态码。设置状态代码时如何返回JSON数据? 问题答案: 使用。此方法采用任何可序列化的数据类型。例如,在以下示例中,我使用了字典。 要返回状态码,请返回响应和代码的元组: 请注意,默认状态代码为200,因此无需指定该代码。 更新 从 Flask 1.1开始 ,return语句将在第一个返回值中自动创建一个字典。您可以直接返回数据: 您还可以使用状态代码返回它

  • 问题内容: 我定义一个类,然后设置该类类型的对象。我想将此对象透明地发送到在另一台计算机上运行的另一个Java应用程序。什么是实现这一目标的最佳技术? 问题答案: 您可以使用Java API创建对象流并发送任何可序列化的对象。但您必须注意,这些内容不会通过网络进行加密: 在发送方方面: 在接收端:

  • 问题内容: 大家好,我正尝试通过websockets发送javascript对象: faye-websockets文档说: send(message) 接受字符串或缓冲区,并通过连接向另一对等方发送文本或二进制消息。 服务器端我正在使用node和faye。 客户端: 我的错误是什么?谢谢 问题答案: WebSockets支持发送和接收:字符串,类型数组(ArrayBuffer)和Blob。发送之前

  • 问题内容: 我有一个内置的javascript,它可以执行以下操作:通过ajax-> php-> sql获取内容,并在单击内容后在index.php上显示它,将显示新内容。 现在,我想拥有一个在将内容单击到php之后发送数据的函数,该函数将在db中执行某些操作。如何创建将发送数据的功能?谢谢! 这是我的显示内容的代码: }); }` 问题答案: 您可以通过在jQuery.ajax 设置中包含值,将

  • 我正试图通过Java的socket发送一个custome对象。我知道我需要将具有我需要发送的对象的类放在相同的包中,具有相同的serialVersionUID并实现Serializable。我已经这样做了,但我仍然不能通过套接字发送对象。我错在哪里了? 以下是客户端代码: 客户端中的类用户 发送user类对象的代码: 这里是服务器的代码: user类的代码:与客户端的user完全相同(我从客户端复