首页 > 解决方案 > 如何在 Flask/Connexion 中获取原始请求负载?

问题描述

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

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

标签: pythonflaskpostconnexionx-www-form-urlencoded

解决方案


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

import urllib.parse

form_data = request.form
request_data = '&'.join([k + '=' + urllib.parse.quote_plus(v) for k, v in form_data.items()])

推荐阅读