0

我需要在Connexion API 处理程序中获取POST请求的正文。这里接受的答案建议使用,但是这总是只为我返回。我的猜测是,Connexion 在被调用之前解析数据,这就是导致问题的原因。Content-Type: application/x-www-form-urlencodedrequest.get_data()b''request.get_data()

在这种情况下,如何获取原始请求有效负载?如果没有办法直接得到它,我该如何正确地重建它request.form(它似乎包含解析的数据)?

4

2 回答 2

0

我不确定是否有更简单的方法,但这似乎可以解决问题:

import urllib.parse

form_data = request.form
request_data = '&'.join([k + '=' + urllib.parse.quote_plus(v) for k, v in form_data.items()])
于 2020-07-14T09:38:36.917 回答
0
from connexion import request

type(request.form)
# <class 'werkzeug.datastructures.ImmutableMultiDict'>
print(dict(request.form))
于 2020-09-29T03:36:58.727 回答