我在页面上发生了一个jquery Ajax请求.在php方面,我正在检查会话是否处于活动状态并执行某些操作.如果会话未激活,我想将用户重定向到php中的另一个页面(标题重定向).我该怎么做.
我知道如何在javascript中实现它(即如果session_fail然后更改window.location但是我可以在php/cakephp中做些什么
重定向只说"你要求的数据可以在这里找到".
HTTP没有办法说"即使您要求资源进入页面,您应该离开该页面并转到其他地方".
您需要返回JavaScript理解为"转到其他位置"的响应并在您自己的代码中处理它.
如果我明白你想要发生什么,那么这就是我实现它的方式。它是在 Prototype 中而不是 jQuery 中,但你应该不会花很长时间来翻译:
new Ajax.Request('process.php', {
on401: function(response) {
var redirect = response.getHeader('Location');
document.location = redirect;
}
});
Run Code Online (Sandbox Code Playgroud)
在 PHP 中,如果会话处于非活动状态,则输出以下内容:
header('Location: http://example.com/login.php', true, 401);
exit;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6345 次 |
| 最近记录: |