DEV Community

Cover image for ๐Ÿš€HTTP Methods for web developers
Dumebi Okolo
Dumebi Okolo

Posted on • Updated on • Originally published at Medium

๐Ÿš€HTTP Methods for web developers

I recently started my journey into backend development and have come across HTTP methods quite often. I did a study on it, and I am sharing all I have learnt so far.

What is the HTTP

The Hypertext Transfer Protocol (HTTP) is the foundation of communication between clients and servers on the web. HTTP methods play a crucial role in defining how this communication occurs. Each method has a specific purpose and understanding their nuances is essential for effective web development.

What are HTTP Methods:

HTTP methods, which are also known as HTTP verbs, are responsible for defining the actions that can be performed on resources identified by Uniform Resource Identifiers (URIs)

HTTP defines several methods, each serving a specific purpose in handling resource requests and responses. The most common HTTP methods include: GET, POST, PUT, DELETE, HEAD, OPTIONS, CONNECT, and TRACE. The GET method retrieves information from the server, while the POST method sends data to the server to create, update, or delete resources. The PUT method is used to update a resource, and the DELETE method is used to delete a resource. The HEAD method retrieves only the header information of a resource, while the OPTIONS method retrieves the available methods that can be used on a resource. The CONNECT method establishes a network connection, and the TRACE method echoes the received request back to the client.

HTTP methods

As web technologies evolve, new methods may be introduced, but the core principles of HTTP methods will continue to be a fundamental aspect of the web communication protocol. These principles include idempotency, safety, and cacheability.

  • Idempotency means that the same request can be made multiple times without causing any side effects.

  • Safety means that a request will not modify the state of the server.

  • Cacheability means that responses can be cached to improve performance.

GET Method:

The GET method is one of the simplest and most commonly used HTTP methods. It is used to request data from a specified resource. GET requests are idempotent, meaning multiple identical requests should have the same effect as a single request. The data is included in the URL as parameters. Requests using GET should only retrieve data.

Example:

GET /api/users?id=123
Enter fullscreen mode Exit fullscreen mode

POST Method:

POST is used to submit data to be processed to a specified resource. Unlike GET, POST requests do not append data to the URL; instead, they include the data in the request body. This makes it suitable for sending large amounts of data or sensitive information. The POST method is used when you want to send some data to the server, for example, file update, form data, etc. The POST method often causes a change in state or side effects on the server.

Example:

POST /api/users
Content-Type: application/json

{
  "name": "John Doe",
  "email": "john@example.com"
}
Enter fullscreen mode Exit fullscreen mode

PUT Method:

PUT is used to update a resource on the server. It requires the client to send the entire updated resource representation. If the resource does not exist, PUT can create a new resource with the provided data. In RESTful web services, the HTTP method PUT is typically used for both creating new data and updating existing data.

Example:

PUT /api/users/123
Content-Type: application/json

{
  "name": "Updated Name",
  "email": "updated@example.com"
}
Enter fullscreen mode Exit fullscreen mode

DELETE Method:

DELETE is used to remove a resource from the server. It is an idempotent method, meaning repeated DELETE requests will have the same effect as a single request.

Example:

DELETE /api/users/123
Enter fullscreen mode Exit fullscreen mode

HEAD Method:

The HEAD method is similar to GET, but it retrieves only the headers of a resource without the actual data. It is useful when you need to check the headers before downloading the entire resource.

Example:

HEAD /api/users/123
Enter fullscreen mode Exit fullscreen mode

OPTIONS Method:

The OPTIONS method is used to determine the communication options available for a given resource. It helps the client understand which HTTP methods and headers are supported.

Example:

OPTIONS /api/users
Enter fullscreen mode Exit fullscreen mode

PATCH Method:

PATCH is used to apply partial modifications to a resource. It is more efficient than PUT when updating only specific fields of a resource.

Example:

PATCH /api/users/123
Content-Type: application/json

{
  "email": "newemail@example.com"
}
Enter fullscreen mode Exit fullscreen mode

Conclusion

HTTP methods play a crucial role in defining how clients and servers interact on the web. Each method has a specific purpose, and understanding their nuances is essential for effective web development. As web technologies evolve, new methods may be introduced, but the core principles of HTTP methods will continue to be a fundamental aspect of the web communication protocol.

References

HTTP Methods
Cover Image
Further Study 1
Further study 2

Let's connect on LINKEDIN

Top comments (2)

Collapse
 
michaeltharrington profile image
Michael Tharrington

Good stuff, Dumebi! ๐Ÿ™Œ

Collapse
 
dumebii profile image
Dumebi Okolo

Thanks, Michael!