What Are HTTP Methods
HTTP methods, also referred to as verbs, are commands issued by a web client to a server. There are a large number of HTTP methods that have been defined; however, in practice, only a small number are widely used with the remainder used only by specific tools such as the Apache Subversion version control system or specific protocols such as UPnP and WebDAV.
The list below should provide some idea of the sheer breadth of HTTP methods that are in used. This is, by no means a complete list, representing only the HTTP methods defined in one of our libraries (original source for the list is unknown).
The few widely used methods are boldfaced and will be discussed in more detail.
|
|
|
|
Common HTTP Methods
All of the most common HTTP methods are supported by Inesonic SpeedSentry. The table below outlines the characteristics of each method, side effects, and notes.
| Method | Body In | Cacheable | Idempotent | Safe | Notes | |
| Request | Response | |||||
| HEAD | No | No | Yes | Yes | Yes | Primarily used to obtain headers and/or check content size. |
| GET | No | Yes | Yes | Yes | Yes | Primary method used to read page/endpoint content. |
| POST | Yes | Yes | Depends | No | No | Changes the server state and is therefore considered “unsafe.” Used to send form data and, often, by REST APIs. |
| PUT | Yes | No | No | Yes | No | Similar to POST except sending PUT message to a server once or multiple times must have the same outcome. |
| PATCH | Yes | Yes | No | Depends | No | PATCH is used to modify resources on a server. |
| CONNECT | No | Yes | No | No | No |
Used to setup tunnels between devices. CONNECT is used to setup SSL/TLS (encrypted) connections. Inesonic SpeedSentry does not support an explicit CONNECT method. |
| DELETE | Depends | Depends | No | Yes | No | Used to remove resources on a server. Since DELETE alters the server’s state, it’s considered an “unsafe” method. |
| OPTIONS | No | Yes | No | Yes | Yes | Primarily used to determine the available communication options for a resource such as the supported methods or supported languages. The OPTIONS method does not alter the server’s state and is therefore considered “safe” |
Cacheable – Indicates the server, or an intermediate resource can store resend the result at a later time.
Idempotent – Indicates the same command can be issued once or multiple times leading to the same outcome.
Safe – Indicates the command does not modify the server state.
HTTP Methods And SpeedSentry
Selecting the correct HTTP method will help you get the most benefit from Inesonic SpeedSentry.
When Monitoring Normal Web Pages
When you configure a SpeedSentry monitor under our Business plan, you will be given the option to select an HTTP method. For normal web pages, you will want to select HEAD or GET depending on whether you intend to check content and whether you want latency measurements to include time to send data.
Use HEAD if you only want to confirm the page exists. Use GET if you are performing content or keyword checking or if you want to make certain latency measurements include time to send page data.
Note that HEAD is more lightweight and will decrease the loading on your servers very slightly.
When Monitoring REST APIs
When you use Inesonic SpeedSentry to check one of your REST APIs, you must use the HTTP method for the REST API. Often an HTTP GET to a specific endpoint will be interpreted differently from an HTTP PUT or POST.
Be sure to consult the documentation for your REST API documentation to be certain that you use the correct method for your testing purposes.