Summary of relevant information on PHP http protocol post request parameters

伊谢尔伦
Release: 2023-03-12 13:46:02
Original
1845 people have browsed it

This article will introduce you to the Http protocol post request parameters in PHP. The specific content is as follows:

Information in WEB development is basically all in POST and GETRequest and response, GET is easy for us to understand because of its intuitive URL-based nature, but POST request, because of the concealment of information, is not only safe, but also brings trouble to developers to simulate sending. In the next few blog posts, I will combine my own notes and understanding to explain in detail several methods of PHP making POST requests. If there are any errors, please correct me.

HTTP protocol information is an important content in WEB development. Understanding it can help us understand BS interaction more deeply, and also help us understand WEB development from a lower level. The HTTP protocol is a simple, flexible and convenient communication protocol, and it should be remembered that it is a stateless protocol, that is, it is a memoryless protocol, and each interaction is separate.

We can use the "Network" panel of the browser's development tools (IE's F12, Firefox's FireBug, etc.) to viewHTTP header information.

Generally, HTTP header information is divided into three categories:Request information, response information and interactive information (I personally think it is also a type of request information).

1, Request information:

When accessing a website, the client will issue a request information. This information does not contain data, but simply contacts the server. Causes the server to return response information.

Its format is two parts: request line and message header.

A. Request line: method (Request method) path (request site address) HTTP/version (protocol/version information)

Common request methods are GET/ POST/HEAD/OPTION, etc.

B. Message header:

Host (required): host and port number, the port number defaults to 80

Accept: the content type expected to be received (image/gif text/html */*)

Accept-Encoding: The compression type expected to be received (gzip deflat)

Accept-Charset: The character set expected to be received (utf-8)

Accept-Language(zh-CN)

Cookie: User’s Cookie information

Connection: Connection control

User-Agent: Client information

... ...

The following is a typical request header information:

GET index.php HTTP/1.1 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding:gzip, deflate, sdch Accept-Language:zh-CN,zh;q=0.8 Cache-Control:max-age=0 Connection:keep-alive Cookie:SOHUHOMETAB=visit:2; IPLOC=CN1407; SUV=1510312046259910 Host:www.sohu.com If-Modified-Since:Sat, 31 Oct 2015 12:45:22 GMT Upgrade-Insecure-Requests:1 User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36
Copy after login

2, response information

Server Return data

The response information is divided into three parts: status line message header response text

A. Status line: HTTP/version (protocol/version information) status code status text (for status code Text description)

There are 5 categories of status codes:

1XX: Indicates a temporary response and the requester needs to continue the operation

2XX: Indicates a successful response and the server successfully responded to the request

3XX: Indicates redirection and requires further operation by the requester

4XX: Indicates client error and the server cannot respond normally

5XX: Indicates server error and the server cannot respond normally Response

For specific information, please refer to:HTTP status codeDetailed explanation

B. Message header:

Server: Server information

Content -Encoding: Data compression format

Content-Length: Data length

Content-Type:Data type

Cache-Control: Cache control

Connection: Connection control

Date: Date information

Expires: Expiration information of returned data

Last-Modified: Returns the last modification time

Set-Cookie: Set the client's Cookie information

... ...

C. Response text

That is, the returned page data, in the page as an HTML document form manifested.

The following is a common response message

HTTP/1.1 200 OK

Cache-Control:no-cache Connection:close Content-Encoding:gzip Content-Length:6947 Content-Type:text/html; charset=GBK Date:Sat, 31 Oct 2015 13:30:11 GMT Expires:-1 Pragma:no-cache Proxy-Connection:keep-alive Server:nginx/1.2.5 Set-Cookie:JSESSIONID=yiuug4yejhc1cdbzydoxlcpn;Path=/
Copy after login

3, the interaction information

contains the request Data request information is common in user uploaded file registration, etc.

It is divided into three parts: request line message header request body

A. The same as the request line for request information

B. Added data about the request body based on the request header

Content-Type: Content type of the uploaded information

Content-Length: Length of the uploaded information

... ...

C. Request text:

That is the specific data string requested (name=xxx&passwork=xxx). Of course, for the sake of security, the POST information is sometimes encrypted and encoded.

The following is a typical request message:

GET login.php HTTP/1.1 Host:passport.sohu.com Accept:text/html,application/xhtml+xml,application/xml Accept-Encoding:gzip, deflate Accept-Language:zh-CN,zh;q=0.8 Cache-Control:max-age=0 Connection:keep-alive Content-Length:166 Content-Type:application/x-www-form-urlencoded Referer:http://mail.sohu.com/ User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36 Form Data domain=sohu.com&callback=passport20008375022711697966_cb1446298206568&appid=1113&userid=FDFFDF%40sohu.com&password=a3f4384c2bc44fa909ffd0ecc5fa8eb9&persistentcookie=0
Copy after login

Once you understand what the browser sends to the server, it is not difficult to use other methods to disguise yourself as a server.

The above is the detailed content of Summary of relevant information on PHP http protocol post request parameters. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!