我有这样的东西:
$.getJSON('/scripts/commons/theScriptDoTravelBackInTime.php',{
}, function(){
// etc.. etc...
}
});
有没有一种方法可以简单地通过在类似地址栏http://www.myserver/scripts/commons/theScriptDoTravelBackInTime.php?
也许输出一个回声"嘿,不要作弊!"
基本,不是100%安全,但通常引用
if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
//your code
}
这就是kohana框架所使用的:
public static function is_ajax()
{
return (isset($_SERVER['HTTP_X_REQUESTED_WITH']) AND
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest');
}
如果你使用zend框架,有一种很好的方法可以检查它的
if($this->_request->isXmlHttpRequest())
{
//The request was made with JS XmlHttpRequest
}
您可以查看HTTP Referer数据。如果它是空白的,那么它来自于键入或粘贴URL。如果它不是空白的,那么该字段将显示链接的来源。
http://en.wikipedia.org/wiki/HTTP_referer