HTTP defines eight methods (sometimes referred to as "verbs")
Can you help me find examples for each one so I can test and understand them better?
The primary or most commonly-used HTTP methods are POST, GET, PUT, PATCH, and DELETE. These methods correspond to create, read, update, and delete (or CRUD) operations, respectively. There are a number of other methods, too, but they are utilized less frequently.
In the API development space, methods are akin to the alphabet – often used, seldom considered. API developers typically only use GET, PUT, or POST, but the official HTTP Request Method registry lists 39 total HTTP verbs, each providing a method for powerful interactions.
First you should take a look into the HTTP 1.1 specification, especially the section method definitions.
OPTIONS Get information about how the server allows to communicate with.
Request:
OPTIONS * HTTP/1.1 Host: example.com
Response:
HTTP/1.1 200 OK Date: … Allow: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE Content-Length: 0
GET Retrieve a resource.
Request:
GET /foo/bar HTTP/1.1 Host: example.com
Response:
HTTP/1.1 200 OK Date: … Content-Type: text/html;charset=utf-8 Content-Length: 12345 <!DOCTYPE …
HEAD Like GET, but returns just the HTTP header.
Request:
HEAD /foo/bar HTTP/1.1 Host: example.com
Response:
HTTP/1.1 200 OK Date: … Content-Type: text/html;charset=utf-8 Content-Length: 12345
POST Create a new resource.
Request:
POST /foo/bar HTTP/1.1 Host: example.com Content-Type: application/x-www-form-urlencoded action=addentry&subject=Hello,%20World
Response:
HTTP/1.1 201 Created Date: … Content-Length: 0 Location: http://example.com/foo/bar
PUT Send data to the server.
DELETE Delete an existing resource.
TRACE Return the request headers sent by the client.
Request:
TRACE /foo/bar HTTP/1.1 Host: example.com
Response:
HTTP/1.1 200 OK Date: … Content-Length: 17 Host: example.com
I don’t know exactly if these examples are correct. Feel free to correct them.
You can experiment with the different HTTP methods using the cURL command line tool. For example:
curl --head http://www.google.co.uk HTTP/1.1 200 OK Cache-Control: private, max-age=0 Date: Sun, 19 Apr 2009 15:33:24 GMT Expires: -1 Content-Type: text/html; charset=ISO-8859-1 Set-Cookie: PREF=ID=a2a414b9a84c8ffd:TM=1240155204:LM=1240155204:S=16kZnqzeSxIJT3jv; expires=Tue, 19-Apr-2011 15:33:24 GMT; path=/; domain=.google.co.uk Server: gws Transfer-Encoding: chunked
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With