当前位置: 首页 > 知识库问答 >
问题:

flask request . form . to _ dict()[重复]

闻人修明
2023-03-14

我面临一个问题。我在Flask开发了一个API。我使用python请求将POST请求(带字典)发送到我的API。下面是我如何发送请求的示例。

import requests

data=dict()
data['a'] = "foo"
data['b'] = "bar"
data['ninja'] = {"Name": "John doe"}

r = requests.post("https://my_own_url.io/", data=data, headers={"content-type" : 'application/x-www-form-urlencoded'}, verify=False)

在我的flask应用程序的后端,我可以收到请求:

from flask import Flask, request

@app.route("/", methods=['POST'])
def home():
    content = request.form.to_dict()

if __name__ == "__main__":
    app.run()

这是我的问题,我送一个python字典:

{'a':“foo”,“b':“bar”,“ninja”:{'姓名':“John Doe”}}

但我只能恢复:

{'a' : “傻瓜”, “b” : “酒吧”, “忍者”: “名字”}在这里,忍者没有正确的价值。

你知道瞄准这个目标的正确方法吗?:)

共有1个答案

马祺
2023-03-14

您必须将服务器端(Flask app)上的数据作为json获取,以便使用<code>请求。get_json()或request.json

from flask import Flask, request

app = Flask(__name__)

@app.route("/", methods=['POST'])
def home():
    content = request.get_json()

if __name__ == "__main__":
    app.run()

在客户端发送为:

import requests

data = dict()
data['a'] = "foo"
data['b'] = "bar"
data['ninja'] = { "Name": "John doe" }

r = requests.post("https://my_own_url.io/", json=data, verify=False)
 类似资料:
  • 嗨,我想知道是否有人能帮我。我有两个。xsd架构文件顺序服务顺序。xsd和order。xsd,每个xsd都将元素类型命名为“order”。 当我开始为这些模式文件创建Java源代码时,我显然在Order类上遇到了类名冲突。 我创建了一个jaxb bindings. xjb文件来重命名从orderservice-order.xsd.生成的订单类名 然而,我仍然得到以下错误 中的XPATH似乎没有问题

  • 上面说这是一次意外的超驰,但这不是偶然的... 我想要的可能吗?还是必须重写方法。我更喜欢kotlin setter..

  • 当我运行这段代码时,它会打印。我的问题是为什么没有编译时错误?对象和字符串的默认值为NULL。那么为什么不编译器说。

  • 也许我对概念感到困惑,但是重写和在子类中创建一个新方法之间有什么区别呢?重写不就是在子类中创建一个不同于父类的新的特定方法吗?但这难道不是在子类中创建一个新方法所要做的吗?

  • 我在一个有这些类的项目中工作: 这些coures类具有其他方法和属性。 如果可以的话,它应该能够使用来自Square和RedRectangle的方法,否则它应该使用来自Rectangle的方法,并且它应该迫使开发人员从他自己的代码中为所有在Square和RedRectangle中被重写的方法编写代码。 我实际上知道这是多重继承,Java不支持它,但我需要实现这种行为。 我试图使用Square和Re

  • 简介 本章中我会介绍重复。通过重复,你可以编写“通常的”程序。虽然也可以使用do表达式,但Scheme中通常通过递归实现重复。 递归 在自己的定义中调用自己的函数叫做递归函数(Recursive Function)。虽然这听起来很奇怪,但是循环的常见方法。如果你把函数类比为机器的话,递归似乎毫无道理。然而,正因为函数是过程,函数调用自己是有意义的。比如说,让我们来考察一下文献调研吧。你可能需要去阅

  • 问题内容: 这个问题已经在这里有了答案 : 8年前关闭。 可能重复: mysql中id(auto_increment列)的碎片 我的数据库中有此列。假设其名称为“ threadid”。它包含赋予每个线程以区别的唯一ID。 线程号9 8 7 6 5 4 3 2 1 假设我已删除ID为5和6的线程。 线程号9 8 7 4 3 2 1 但是,当删除后有一个提交时,给该线程的唯一ID是10。不是5。我认为

  • 我正在尝试重命名/删除一个 Mongo 集合,我无意中放了一个 .(点) 在数据库集合名称的末尾,因此集合名称如下所示: 收藏品名称。 我无法找到一种方法来使用包含点号的集合名称来删除或重命名集合,而不会返回错误。 任何建议这是否是可能的。