Get vs. Post
There are many differences between the Get and Post request. Let's see these differences:
|1) In case of Get request, only limited amount of data can be sent because data is sent in header.
||In case of post request, large amount of data can be sent because data is sent in body.
|2) Get request is not secured because data is exposed in URL bar.
||Post request is secured because data is not exposed in URL bar.
|3) Get request can be bookmarked.
||Post request cannot be bookmarked.
|4) Get request is idempotent . It means second request will be ignored until response of first request is delivered
||Post request is non-idempotent.
|5) Get request is more efficient and used more than Post.
||Post request is less efficient and used less than get.
GET and POST
Two common methods for the request-response between a server and client are:
- GET- It requests the data from a specified resource
- POST- It submits the processed data to a specified resource
Anatomy of Get Request
The query string (name/value pairs) is sent inside the URL of a GET request:
As we know that data is sent in request header in case of get request. It is the default request type. Let's see what information is sent to the server.
Some other features of GET requests are:
- It remains in the browser history
- It can be bookmarked
- It can be cached
- It have length restrictions
- It should never be used when dealing with sensitive data
- It should only be used for retrieving the data
Anatomy of Post Request
The query string (name/value pairs) is sent in HTTP message body for a POST request:
As we know, in case of post request original data is sent in message body. Let's see how information is passed to the server in case of post request.
Some other features of POST requests are:
- This requests cannot be bookmarked
- This requests have no restrictions on length of data
- This requests are never cached
- This requests do not retain in the browser history