Flask 框架如何直接获取 POST 请求的 JSON 原始数据?

2016-02-22 13:09:21 +08:00
 qq7171891
自己做了个小网站接了第三方服务,第三方服务会 POST 一个 JSON 过来参与签名加密,我必须获取第三方 POST 过来的 JOSN 的原始数据才能正确效验。

现在是用 Flask 的 request.get_json()去拿 JSON 数据,拿是可以拿到,但是拿到的数据已经不是原始数据了,被重新排序,键值对还加了空格,这样就不是原始的 JSON 了,加密效验也就无法完成。

请求大神指点如何拿到原始的 JSON 数据。当然,要基于 Flask 的 route 。
26895 次点击
所在节点    Flask
27 条回复
mulog
2016-02-22 15:24:51 +08:00
楼主好人啊 赞
不过呢建议你还是善用搜索 google 'flask get raw request data' 出来第一条就有答案告诉你 request.get_data()
qq7171891
2016-02-22 15:36:59 +08:00
@windfarer 谢谢。

以上楼层有用答案的我都送铜币了,一层送一份,不管是不是同一个人。

后续我看到本帖之前说的几位前辈有留支付宝账号的,我会立刻发红包。

再次感谢各位。
baocaixiong
2016-02-22 15:39:16 +08:00
@qq7171891 不客气,楼主好好学习
lixiaohan
2016-02-22 15:47:31 +08:00
request.get_data() 看源码 或者官方文档就有
http://www.pythondoc.com/flask/api.html
shajiquan
2016-02-22 16:01:35 +08:00
@qq7171891 不客气。互相交流。
jixiangqd
2016-02-22 16:15:05 +08:00
楼主真是太客气了,铜币已收到, rmb 就算了~v2 就是用来交流技术的嘛,你给钱不坏了风气。。。顺手回一下而已。
现在用 django 比较多,可能记混了,忘了 flask 的 raw_data 的取值方式,可能有些误导了,抱歉,哈哈哈。。
WhyLiam
2016-02-23 11:47:11 +08:00
为什么我不记得 ping++ Webhooks 要这么复杂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/258206

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX