当前位置:  开发笔记 > 编程语言 > 正文

如何发布json数据?

如何解决《如何发布json数据?》经验,为你挑选了1个好方法。

我的flask代码如下:

@app.route('/sheets/api',methods=["POST"])
def insert():
    if request.get_json():
        return "

Works!

" else: return "

Does not work.

"

当请求是:

POST /sheets/api HTTP/1.1
Host: localhost:10080
Cache-Control: no-cache

{'key':'value'}

结果是

Does not work.

.

当我添加Content-Type标题时:

POST /sheets/api HTTP/1.1
Host: localhost:10080
Content-Type: application/json
Cache-Control: no-cache

{'key':'value'}

我收到400错误.

我究竟做错了什么?



1> Martijn Piet..:

您没有发布有效的JSON.JSON字符串使用引号:

{"key":"value"}

使用单引号时,字符串无效JSON,并返回400 Bad Request响应.

演示仅实现您的路线的本地Flask服务器:

>>> import requests
>>> requests.post('http://localhost:5000/sheets/api', data="{'key':'value'}", headers={'content-type': 'application/json'}).text
'\n400 Bad Request\n

Bad Request

\n

The browser (or proxy) sent a request that this server could not understand.

\n' >>> requests.post('http://localhost:5000/sheets/api', data='{"key":"value"}', headers={'content-type': 'application/json'}).text '

Works!

'

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有