php - 获取请求后的服务器端重定向
问题描述
比方说,我们在 Web 工具中处理一个项目,一段时间后,应用程序希望在会话到期之前将该项目保存为备份。
对于保存,我们使用 fetch 方法(可以是 AJAX、Axios 等),我们向控制器函数发出请求,在其中我们保存项目,清除会话并希望重定向到主页。我已经用 Laravel 尝试过这种情况,但是当重定向时间到来时,会话数据被清除但服务器不会重定向到主页。
是因为 fetch 和其他类型的异步函数总是等待响应吗?
解决方案
重定向意味着“可以在此处找到您要求的内容”而不是“在主浏览器窗口中加载此 URL”。
如果浏览器请求一个 URL 的目的是在主浏览器窗口中显示它(例如,点击了一个链接),那么它将遵循重定向并在主浏览器窗口中显示它。
如果浏览器打算做其他事情(例如渲染一个<img>
),那么它会跟随重定向,在新的 URL 处获取图像,然后在<img>
' 的位置渲染它。
同上阿贾克斯。您正在使用 Ajax 发出请求,因此浏览器遵循重定向并将新 URL 处的资源提供给 JavaScript 进行处理。
如果您想发出 POST 请求,在主浏览器窗口中加载新文档:提交表单并且不要使用 Ajax。
推荐阅读
- python - 行/列切片scipy.sparse.csc_matrix中的内存效率低下
- reactjs - 将重定向与 history.push 一起使用时无法更改状态
- python - 使用 str.contains 查找部分字符串
- websocket - asyncio :: 访问在另一个循环中创建的 websocket
- android - 在 Android 设备上捕获 USB 流量
- promise - 为抛出错误的异步函数编写 Jest 测试失败
- docker - 在端到端测试期间,OpenShift 上的赛普拉斯(电子)错误“无法获取 'appData' 路径”
- node.js - 如何在 Cloud Foundry 上重新启动 NodeJS 应用程序(在 scp'ing 代码更改之后)
- python - 在 Python 中从 SQL 打印日期时间值返回无效结果
- typescript - 类型'函数和输入类型Composer
[key]' 不满足约束 '(...args: any) => any'