我正在开发一个基于Ajax的php应用程序。任何人都知道,我正在检查用户是否登录每个php文件作为第一个语句。在记录失败的情况下,我应该采用两种方式进行响应,
服务器使用标头(url)重定向到登录页面。 案例:如果用户直接输入特定的URL
在Ajax响应中传递url,询问客户端页面重定向或通知 CASE:如果用户尝试通过Ajax请求执行某些操作
所以我的问题是如何识别来自客户端的请求是否是Ajax调用?如果我知道我可以相应地处理我的回复。
或者有更好的方法来处理上述情况吗?
谢谢
答案 0 :(得分:1)
这取决于您执行ajax调用的方式。最好在发送ajax请求时设置以下请求标头(大多数库,如jQuery或prototype将为您执行此操作):
'X-Requested-With' = 'XMLHttpRequest'
因此,您可以在服务器端检查该标头,并相应地使用302重定向或标记进行响应,以便客户端javascript执行重定向。
答案 1 :(得分:0)
在客户端,您可以解析AJAX响应,如果它显示用户需要登录,请调用window.location = LOGIN_PAGE_URL;