Thursday 18 August 2011

Get vs Post




If the form data is encoded with the URL that
is requested from the server, it is termed as Get, whereas, if the form
data is sent within the body of the message, it is termed as the Post.
When you do not have any additional information with the URL, this form
is being used.

The HTML pages that we read in our web browser are of static in
nature. These are the static documents and when we interact actively
with a web page, you have to send the data back to sever in anyway. This
is achieved with the use of forms and there are two methods by which
you can use a form; Get and Post. By using the form, the data is encoded
to send it back to the server. Now, what is the exact difference
between Get and Post?


If the data is encoded with the URL that is requested from the
server, it is termed as Get according to the HTML specifications. The
form data is separated from the URL by the application that receives the
data. After parsing out the URL and form data, it is used as input for
the query. If you see a long tail of values and variables tied onto the
end of a web URL, you can understand that you are dealing with the Get
query. With all the query information, you can bookmark the whole URL if
you are working with the Get request. So you can definitely see the
results of the query when you open up the bookmark again.


If the form data is sent within the body of the message, it is termed
as the Post. When you do not have any additional information with the
URL, this form is being used. The Post cannot be cached in the browser history
of the user when compared to the Get. This condition arises the
situation that page have to resubmit the information to the web server.
You night have encountered with this situation quite often.


It is often recommended that you have to use Get when you develop a
form and only in certain conditions you have to use Post. If any of the
variable crash the browser or if it makes the URL too long, you can use
Post form. There are several advantages of using Post as it is the
better form you can use if you need to make the functionality of your
application hidden or less visible to the other users. But this is not a
promise of security as anyone can understand the variables you use from the source code of your application.


The major differences between Get and Post can be outlined as:



  • Visibility


This is the fundamental difference between the Get and Post methods.
The Get request is appended to the URL as is separated by a question
mark. The Post request can’t be seen as it is encapsulated in the HTTP
body.



  • Performance


It is relatively easy to create a Get request and it is much faster
than the Post request. But the Post request takes time in encapsulation
process.



  • Data type


Since Get request is sent through the URL, it can be of the text
format only. But there is no such restriction in the case of Post and it
can carry both binary and text data.



  • Data set


“Enctype” attribute with value can be used with the Post requests while the Get requests can only use the ASCII characters.


If the form causes no side-effects, the “GET” method can be used. Most of the databases are ideal for the use of GET method.

No comments:

Post a Comment