What is HTTP? and HTTP Request Methods

What is HTTP?

The Hypertext Transfer Protocol (HTTP) is designed to enable communications between clients and servers.HTTP works as a request-response protocol between a client and server.

HTTP Request and Response over Internet
HTTP Request and Response over Internet

Example: A client (browser) sends an HTTP request to the server; then the server returns a response to the client. The response contains status information about the request and may also contain the requested content.

  • GET
  • POST
  • PUT
  • HEAD
  • DELETE
  • PATCH
  • OPTIONS
  • CONNECT
  • TRACE

The two most common HTTP methods are: GET and POST.

GET is used to request data from a specified resource.

Note that the query string (name/value pairs) is sent in the URL of a GET request:

/test/demo_form.php?name1=value1&name2=value2

Some notes on GET requests

  • GET requests can be cached
  • GET requests remain in the browser history
  • GET requests can be bookmarked
  • GET requests should never be used when dealing with sensitive data
  • GET requests have length restrictions
  • GET requests are only used to request data (not modify)

POST is used to send data to a server to create/update a resource.

The data sent to the server with POST is stored in the request body of the HTTP request:

POST /test/demo_form.php HTTP/1.1
Host: atdilshan.medium.com

name1=value1&name2=value2

Some notes on POST requests:

  • POST requests are never cached
  • POST requests do not remain in the browser history
  • POST requests cannot be bookmarked
  • POST requests have no restrictions on data length

PUT is used to send data to a server to create/update a resource.

The difference between POST and PUT is that PUT requests are idempotent. That is, calling the same PUT request multiple times will always produce the same result. In contrast, calling a POST request repeatedly have side effects of creating the same resource multiple times.

HEAD is almost identical to GET, but without the response body.

In other words, if GET /users returns a list of users, then HEAD /users will make the same request but will not return the list of users.

HEAD requests are useful for checking what a GET request will return before actually making a GET request — like before downloading a large file or response body.

The DELETE method deletes the specified resource.

The PATCH method is used to apply partial modifications to a resource.

The OPTIONS method describes the communication options for the target resource.

The CONNECT method is used to start a two-way communications (a tunnel) with the requested resource.

The TRACE method method is used to perform a message loop-back test that tests the path for the target resource (useful for debugging purposes).

--

--

--

Hi! My Name is Antony Thevathas Dilshan. I am 20 years old. I ‘m a IT Enthusiast. I believe in helping people with my abilities and knowledge.

Love podcasts or audiobooks? Learn on the go with our new app.

Agile Testing Days 2018: My Highlights

Train/Test Complexity and Space Complexity of Linear Regression

Monitor your websites… with Home Assistant

Getting Started with Jenkins

My Experience At Launch…

Code sharing between Flutter and AngularDart

Google Summer of Code: OpenMF Week 7

Big Software needs Software Intelligence

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Dilshan AT

Dilshan AT

Hi! My Name is Antony Thevathas Dilshan. I am 20 years old. I ‘m a IT Enthusiast. I believe in helping people with my abilities and knowledge.

More from Medium

Secure API with Oauth 2.0 Kong Plugin

RESTful API Evolution With HATEOAS

Loan Payment System using Spring Boot — Fraction Interview Challenge

Entity versioning/auditing with Envers