HTTP supports a number of different methods, including:
- GET
- HEAD
- POST
- PUT
- DELETE
- CONNECT
- OPTIONS
- TRACE
- PATCH
These methods are defined in the HTTP 1.1 specification:
https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
It is common to find that a web server only supports a subset of these. In many cases, supporting too many methods is deemed to be a security risk. The Invoke-WebRequest command can be used to verify the list of HTTP methods supported by a site, for example:
PS> Invoke-WebRequest www.indented.co.uk -Method OPTIONS | Select-Object -ExpandProperty Headers Key Value --- ----- Allow OPTIONS, TRACE, GET, HEAD, POST Public OPTIONS, TRACE, GET, HEAD, POST Content-Length 0