Home > Article > Web Front-end > Basic knowledge of HTTP messages and ajax
The content passed by the client to the server and the content passed by the server to the client are both HTTP messages. Ajax is a method in client JS, used to send requests to the server. Let me share with you the basic knowledge of HTTP messages and ajax through this article. Friends who are interested should take a look.
HTTP message
The content passed by the client to the server and the content passed by the server to the client belong to the HTTP message
Starting line: Request starting line Response Starting line
Header: Request header Response header Common header (both request and response) Custom header
Body: Request body Response body
The client passes it to Server-side data:
The question mark after the request URL is used to pass parameters to the server /getList?name=zhangsan&age=7
Set the header of the request (set the request header information)
Set the request body and put the content passed to the server in the request body and pass it to the server
Data passed from the server to the client:
Set the response header information
Setting Response body content
Ajax: async javascript and xml Asynchronous JS and XML (extensible markup language, the tags used in XML files are all expanded by themselves, and stored using their own expanded regular tags Relevant data)
Ajax is a method in client JS, used to send requests to the server (can also be passed to server-side data), and then obtain the content returned by the server (Ajax is generally run in the client's browser).
Ajax four steps:
Create an Ajax object (the following writing method is not supported in IE6 and lower browsers) )
var xhr = new XMLHttpRequest;
Basic information configuration before sending: configure the request method (GET, POST, PUT, DELETE, HEAD...)
Open a URL address (configure which server address to send to Request)
Synchronous or asynchronous (true represents asynchronous, false represents synchronous, the default is true)
[username] Provide the requested user name to the server
[userpass] Provide to the server The requested user password, these two values are generally not written. Only if the server has implemented security restrictions and only allows specific users to access, we will pass it
xhr.open('get',"/data.txt",false,[username],[userpass]);
to bind a method to the onreadystatechange event. Monitor state changes (as long as the state changes, the method execution is triggered)
xhr.onreadystatechange = function(){
xhr.readyState: AJAX status code, which can represent the progress of the current processing
0 unset The current request has not been sent yet
1 opened The URL address has been opened (the parameter configuration before sending has been completed)
2 headers_received The response header information has been accepted
3 loading The main returned content is being prepared on the server side Processing
4 done The content of the response body has been successfully returned to the client
xhr.status: HTTP network status code, describing the status of the server response content
200 OR ^ 2\d{2} (200 or starting with 2) -> It means that the content of the response body has been returned successfully
301 Permanent redirection/permanent transfer
302 Temporary redirection/ Temporarily transfer the load balancing of the server
304 The content obtained this time is to read the data in the cache
400 There is an error in the parameters passed by the client to the server
401 No permission Access
404 The address accessed by the client does not exist
500 Unknown server error
503 The server is overloaded
if(xhr.readyState===4 && /^2\d{2}$/.test(xhr.status)){ var val = xhr.responseText; } }
Sending request: The parameter is a request The content passed to the server in the body
xhr.send(null);
is what I compiled for everyone. I hope it will be helpful to everyone in the future.
Related articles:
Ajax asynchronous request technology example explanation
The principle of Ajax cross-domain request (Graphic tutorial)
The above is the detailed content of Basic knowledge of HTTP messages and ajax. For more information, please follow other related articles on the PHP Chinese website!