Home  >  Article  >  Backend Development  >  PHP determines whether it is an ajax request_PHP tutorial

PHP determines whether it is an ajax request_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:55:281041browse

php determines whether it is an ajax request

For program security considerations, in some cases we need to detect whether a request is an AJAX request. How to judge? This article briefly shares the experience.

1. When using native JavaScript to issue an ajax request, we can add information to the request header to facilitate the back-end PHP program to distinguish. The method is as follows:

var xmlhttp=new XMLHttpRequest(); 
xmlhttp.open("GET","test.php",true); 
xmlhttp.setRequestHeader("X-Requested-With","XMLHttpRequest"); 
xmlhttp.send();

Here we add X_REQUESTED_WITH information to the header, with the value XMLHttpRequest. Of course, the value here can be set at will, such as: www.phpernote.com. In this way, you can write this in the receiving php program:

<?php
// php 判断是否为 ajax 请求 
if(isset($_SERVER['HTTP_X_REQUESTED_WITH'])&&strtolower($_SERVER['HTTP_X_REQUESTED_WITH'])=='xmlhttprequest'){ 
    // ajax 请求的处理方式 
}else{ 
    // 正常请求的处理方式 
}

2. The currently popular js framework jquery has taken this into account quite fully. When jQuery issues an ajax request, it will add a message named X-Requested-With to the header of the request. The message content is: XMLHttpRequest, so the backend PHP can also be judged using the above code.

Note: If your jquery request opens a web page through an iframe, the HTTP_X_REQUESTED_WITH parameter will not be passed, which means you have no way to determine the type of request.

Articles you may be interested in

  • How does PHP determine whether the current operating system is linux or windows
  • PHP determines whether a request is an AJAX request or a normal request
  • How to determine whether a string is in English, pure Chinese, or a combination of Chinese and English
  • PHP determines whether the server SSL is enabled, that is, whether it supports HTTPS connection
  • php determines the remote file Is there a way
  • php get_headers to determine whether the URL is valid
  • How does PHP determine whether a gif image is a dynamic image (animation)
  • How does PHP determine whether a constant has been defined

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/992745.htmlTechArticlephp determines whether it is an ajax request. For program security considerations, we will need to detect a request in some cases How to judge whether it is an AJAX request? This article will briefly share...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn