The difference between the get and post surfaces:
①get is to fetch data from the server, and post is to transfer data to the server.
Get and post are just a way of passing data, and get can also send data to the server, and they are essentially sending requests and receiving results. There's a difference between the organization format and the amount of data.
②get is to add the parameter data queue to the URL that the Action property of the submission form refers to, and the value corresponds to the field one by one in the form, which is visible in the URL. Post is the HTTP post mechanism that places the fields within the form with their contents in the HTML header, along with the URL address referred to by the Action property. The user does not see the process.
③ for Get mode, the server side uses Request.QueryString to get the value of the variable, and for post, the server side uses Request.Form to get the submitted data.
The amount of data transmitted by ④get is small and cannot be greater than 2KB. Post transmits a large amount of data, which is generally not restricted by default. In theory, however, the maximum amount of IIS4 is 100KB in 80KB,IIS5. Post basically has no limits.
⑤get security is very low and post security is high. Because parameters are directly exposed to URLs, it is not recommended to use get requests to pass sensitive information.
⑥get is harmless when the browser is rolled back, and post submits the request again.
⑦get requests can only be URL-encoded, while post supports multiple encodings.
⑧get requests are cached by the browser, and post is not, unless set manually. The GET request parameters are kept intact in the browser history, and the parameters in the post are not preserved
⑨get requests the parameters that are passed in the URL are of a length limit, and the post does not. For data types of parameters, get accepts only ASCII characters, while Post has no restrictions.
Other related differences
1). For the Get mode request, the browser will send the HTTP header and data, the server response 200 (return data), and for post, the browser first sends the header, the server responds to the continue, the browser sends data, the server response 200 OK (return data).
2). The semantics of Get is the request to get the specified resource. The Get method is secure, idempotent, and cacheable. Because get requests are typically used for resource information acquisition rather than modification, get means so-called security. In other words, a GET request generally does not have a side effect, it simply gets the resource information, just like a database query, does not alter the data and does not affect the state of the resource. Therefore, a GET request does not generally change the server state. Idempotent means that multiple requests for the same URL should return the same result. The message body of the Get method does not have any semantics
3). The semantics of post is to handle the specified resource according to the request load (the message body), depending on the resource type. Post unsafe, not idempotent, (most implementations) not cacheable
4). Get is requested via URL, can be directly seen, clear text transmission. Post is requested by the request header, which can be seen by the developer tool or the grab bag, as well as in clear text.