我有一个HTML文档,该文档使用AJAX调用从PHP文件加载内容。我的代码的重要部分如下:
default.html:
/*more code above*/ var PHP_URL = "content.php"; var Content = document.getElementById('Content'); ajaxRequest = new XMLHttpRequest(); ajaxRequest.onreadystatechange = function() { if(ajaxRequest.readyState==4) { if (ajaxRequest.status==200) Content.innerHTML = ajaxRequest.responseText; else Content.innerHTML = "Error:<br/>unable to load page at <b>"+PHP_URL+"</b>"; Content.className = "Content Solid"; } } ajaxRequest.open("GET",PHP_URL,true); ajaxRequest.send(); /*more code below*/
“ content.php”中的文件是否有可能检测到是否已从“ default.html”或其他调用文档中对其进行了调用?
jQuery和mooTools等最著名的Ajax框架都会添加一个特定的标头,您可以使用PHP进行检查:
if (strcasecmp('XMLHttpRequest', $_SERVER['HTTP_X_REQUESTED_WITH']) === 0) { // Ajax Request }