即使在这里和那里遵循许多示例,我也无法让我的 API 在 POST 方法中工作。这是关于它的代码:
from flask import Flask, jsonify, request
@app.route('/api/v1/lists', methods=['POST'])
def add_entry():
print("p0")
content = request.get_json()
appname = content.get('title')
print(content)
print(appname)
当我使用 curl 查询时(我在 Windows 上运行它):
curl.exe -i -H “Content-Type: application/json” -X POST -d ‘{“title”:“titi”}’ http://localhost:5000/api/v1/lists
curl.exe -i -H “Content-Type: application/json” -X POST -d “{”““title”“”:“”“读一本书”“”}” http://localhost:5000/ api/v1/列表
我总是返回 400 错误:
HTTP/1.0 400 错误请求内容类型:文本/html 内容长度:192 服务器:Werkzeug/0.12.1 Python/3.6.0 日期:2017 年 4 月 4 日星期二 21:55:29 GMT 400 错误请求错误请求浏览器(或代理)发送了该服务器无法理解的请求。
我看不出错误在哪里。
谢谢你的帮助。
原文由 BrunoCX92 发布,翻译遵循 CC BY-SA 4.0 许可协议
即使使用“工作”代码,如果您的 if 块失败(当
value1
和value2
是None
相同的错误),因为你会导致相同的错误)不处理 if 块的else
部分。更正后应该是:当然,您可能想要比
None
更好的东西作为响应。