跳至主要内容
短.be

307 重定向

HTTP/1.1 中的临时重定向状态码,严格保持原始请求方法不变。

2025年7月15日 · 约 1 分钟阅读

重定向

307 重定向 (Temporary Redirect) 是 HTTP/1.1 协议中引入的临时重定向状态码。与 302 的关键区别在于,307 严格要求浏览器在重定向时保持原始请求方法不变。如果原始请求是 POST,重定向后仍然使用 POST 方法发送请求。

307 的引入是为了解决 302 重定向的历史歧义。在早期的浏览器实现中,302 重定向经常将 POST 请求改为 GET 请求,这与 HTTP 规范的原始意图不符。307 明确规定了"不得改变请求方法"的行为,消除了这种歧义。欢迎参阅在 Amazon 搜索 HTTP 规范书籍

在 URL 缩短服务中,307 重定向的使用场景相对有限,因为大多数短链接的访问都是 GET 请求。但在 API 网关或表单提交的重定向场景中,307 的方法保持特性非常重要。

307 与 HSTS (HTTP Strict Transport Security) 的关系也值得关注。当浏览器首次访问启用了 HSTS 的网站时,服务器返回 307 Internal Redirect 将 HTTP 请求重定向到 HTTPS在 Amazon 搜索网络安全书籍详细解释了这些机制。

分享到 XHatena

这篇文章对您有帮助吗?

相关术语

相关文章

常见问题

307 重定向在什么场景下使用?
在需要将 POST 请求临时重定向到另一个 URL 时使用。与 302 不同,307 保证不会更改请求方法。
307 和 302 有什么区别?
两者都是临时重定向,但 307 会保留请求方法(POST、PUT 等)。302 在规范上可能会更改方法,某些实现中 POST 可能被转换为 GET。

想要创建短链接吗?

免费缩短网址