我有一个烧瓶应用程序,它有一个按钮的onClick回调,由javascript处理。JS函数调用flask应用程序的一个端点(在从DOM元素收集了请求所需的所有数据后(-它不绑定到表单。在flask端点内,它重定向到另一个页面。在"网络"选项卡中查看,由于重定向,对flask_endpoint
的请求不会返回响应。请求的响应是Failed to load response data: No content available because the request was redirected
。但是,在"网络"选项卡中,会创建一个重定向路由的单独请求,并且模板在该请求的响应中。但是,它不会将实际的浏览器路由重定向到该响应。有人能解释一下原因吗?
Javascript:
$('#add-button').click(callback)
async function callback(e) {
await axios.post(`/some_flask_endpoint`, {
...request_body...
});
}
烧瓶终点:
@app.route('/some_flask_endpoint', methods=["GET", "POST"])
def save_something():
# some logic...
return redirect('redirect_to_some_url')
- 很明显,您在端点上请求"some_flask_endpoint";但是您将请求重定向到"redirect_to_some_url">
- 您显示的JS似乎不会将浏览器重定向到新的端点
回到您的";问题";,如果您正在质疑Fail to load
,它只是告诉您端点没有任何实际响应,因为它是一个重定向。如果你质疑重定向后浏览器中没有发生任何事情,那是因为js有责任处理响应。如果不重定向浏览器,浏览器将保持不变。