PHP判断一个请求是AJAX请求还是普通请求
2个回答
展开全部
可以根据 HTTP 头部 HTTP_X_REQUESTED_WITH 来进行判断,适合绝大多数浏览器。
提供代码:
<?php
function isAjax()
{
return isset($_SERVER["HTTP_X_REQUESTED_WITH"顷渣])
&& $_SERVER["HTTP_X_REQUESTED_WITH"] === "XMLHttpRequest";
}
//使用
if (isAjax()) {
echo "是AJAX请求";
}
不过指乎配,很多框架都包含判断 ajax 的方唯指法哦,开箱即用。
展开全部
如果AJAX请求是可燃仔控的(自己写的)那么狠容易可以定制信息头(比如jQuery的$.ajax),那么PHP通过不同的信息头就可以判断了。
另外也可以通过PHP获取预定义变量中的XMLHttpRequest判段,原理和上面差不多,更方便一些。
如果AJAX不可控,很难判断,因为AJAX也可以正常的发送get信息,和网页的请求没有差别,而且不同框架下的AJAX格式差异很大,也非常灵活,不好判皮唯汪山蔽断。
另外也可以通过PHP获取预定义变量中的XMLHttpRequest判段,原理和上面差不多,更方便一些。
如果AJAX不可控,很难判断,因为AJAX也可以正常的发送get信息,和网页的请求没有差别,而且不同框架下的AJAX格式差异很大,也非常灵活,不好判皮唯汪山蔽断。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询