Python Flask 有意空响应

问题描述 投票:0回答:2

有没有办法返回具有某些属性的响应(来自

make_response()
对象或类似对象),以便它不会再次呈现页面,也不会执行任何其他操作。我正在尝试在服务器上运行代码而不生成任何输出

一个简单的“return None”会产生:

ValueError: View function did not return a response

这应该是可能的,因为以下代码仅下载文件并且不渲染模板:

myString = "First line of a document"
response = make_response(myString)
response.headers["Content-Disposition"] = "attachment; filename=myFile.txt"
return response
python flask response
2个回答
245
投票

您正在响应请求,您的 HTTP 服务器必须返回某些内容。 HTTP“空响应”响应是

204 No Content
:

return ('', 204)

请注意,向浏览器返回文件不是空响应,只是与 HTML 响应不同。


26
投票

使用烧瓶
Response

状态 204(无内容)

from flask import Response    

return Response(status=204)

或者

from flask import Response
from http import HTTPStatus

return Response(status=HTTPStatus.NO_CONTENT)
© www.soinside.com 2019 - 2024. All rights reserved.