GET |
✅ Yes |
✅ Yes |
✅ Yes |
Most commonly cached method. Responses can be cached by browsers/CDNs. |
HEAD |
✅ Yes |
✅ Yes |
✅ Yes |
Same as GET, but no response body. Often used for checking metadata. |
POST |
❌ No |
❌ No |
⚠️ Sometimes |
Not cacheable by default, but can be with explicit headers. |
PUT |
❌ No |
✅ Yes |
❌ No |
Generally used for updates. Not cacheable. |
DELETE |
❌ No |
✅ Yes |
❌ No |
Removes resources. Not cacheable. |
PATCH |
❌ No |
❌ No |
❌ No |
Partially modifies resources. Not cacheable. |
OPTIONS |
✅ Yes |
✅ Yes |
⚠️ Rarely |
Used for CORS preflight. Technically cacheable but rarely done. |
CONNECT |
❌ No |
❌ No |
❌ No |
Used for tunneling (e.g., HTTPS). Not cacheable. |
TRACE |
✅ Yes |
✅ Yes |
❌ No |
Used for diagnostics. Not cacheable. |