我们正在使用Flask为我们的API之一,我只是想知道是否有人知道如何返回HTTP响应201?
对于404这样的错误,我们可以调用:
from flask import abort
abort(404)
但是201美元我得到了
LookupError: 201没有例外
我需要在文档中创建自己的异常吗?
我们正在使用Flask为我们的API之一,我只是想知道是否有人知道如何返回HTTP响应201?
对于404这样的错误,我们可以调用:
from flask import abort
abort(404)
但是201美元我得到了
LookupError: 201没有例外
我需要在文档中创建自己的异常吗?
当前回答
您还可以使用flask_api发送响应
from flask_api import status
@app.route('/your-api/')
def empty_view(self):
content = {'your content here'}
return content, status.HTTP_201_CREATED
你可以在这里找到参考资料http://www.flaskapi.org/api-guide/status-codes/
其他回答
如果你在API中使用flask_restful Package 返回201就会变成
def bla(*args, **kwargs):
...
return data, 201
其中data应该是任何可哈希/ JsonSerialiable值,如dict, string。
您可以使用Response来返回任何http状态代码。
> from flask import Response
> return Response("{'a':'b'}", status=201, mimetype='application/json')
你可以这样做
result = {'a': 'b'}
return result, 201
如果您想在响应中返回一个JSON数据和错误代码 您可以在这里和这里阅读有关make_response API的详细信息
这里抄袭了Luc的评论,但是要返回一个空白的响应,比如201,最简单的选择是在你的路由中使用下面的返回。
return "", 201
例如:
@app.route('/database', methods=["PUT"])
def database():
update_database(request)
return "", 201
你可以在这里阅读。
return render_template('page.html'), 201