redirect RFC 9110
HTTP 307 Temporary Redirect
Same as 302 but explicitly preserves the HTTP method — POST stays POST.
What it means
Introduced to fix the 302 ambiguity. When a POST/PUT/PATCH request receives 307, the client MUST re-send with the same method and body to the new URL. Modern APIs should prefer 307 over 302 when a redirect is temporary but the method matters (payment redirects, form re-submits).
When servers send it
- •Temporary redirect where the client method must not change
- •API gateway or reverse proxy re-routing a request in flight
What the client does
Re-sends the exact same request (method + body + headers) to the new URL.
When you see it
- •Modern APIs preferring method-preserving redirects
Similar codes
301 Moved Permanently redirect
The resource has permanently moved to a new URL — clients and search engines should update their references.
302 Found redirect
Resource is temporarily at a different URL — do not update bookmarks or search engine indexes.
308 Permanent Redirect redirect
Same as 301 but explicitly preserves the HTTP method — POST stays POST.
304 Not Modified redirect
The cached copy the client already has is still valid — no body sent.
← All HTTP status codes · HTTP status cheat sheet · HTTP headers reference