我希望有一个网页使用AJAX来访问PHP文件 ./ajax/file.ajax.php
./ajax/file.ajax.php
麻烦的是,我不希望人们能够在浏览器中键入地址来直接访问该PHP文件。
有什么办法可以使只有AJAX请求才能访问该文件?
我可以在PHP文件中检查某些内容来实现此目的吗?
如果您使用jQuery制作XHR,它将设置一个自定义标头X-Requested-With。您可以检查并确定如何提供您的回复。
X-Requested-With
$isXhr = isset($_SERVER["HTTP_X_REQUESTED_WITH"]) AND strotlower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest";
但是,这对于欺骗是微不足道的。过去,我曾用它来决定是渲染整个页面(如果未设置)还是呈现页面片段(如果设置,将被注入当前页面)。