gpt4 book ai didi

http-status-codes - POST 后,我应该执行 302 还是 303 重定向?

转载 作者:行者123 更新时间:2023-12-03 06:02:08 25 4
gpt4 key购买 nike

Web 应用程序的常见场景是在修改数据库的 POST 之后进行重定向。就像用户创建数据库对象后重定向到新创建的数据库对象一样。

似乎大多数网络应用程序都使用 302 重定向,但如果您希望使用 GET 获取重定向中指定的 URL,根据规范,303 似乎是正确的做法。从技术上讲,对于 302,浏览器应该使用与获取原始 url 相同的方法来获取指定的 url,即 POST。但大多数浏览器不会这样做。

302 - https://www.rfc-editor.org/rfc/rfc9110.html#name-302-found

303 - https://www.rfc-editor.org/rfc/rfc9110.html#name-303-see-other

那么我应该使用 302 还是 303?

最佳答案

正确的是303。

我使用它,没有发现与 Netscape 4(1998 年,17 年前发布)更新的 UA 存在任何兼容性问题。

如果您使用 302,则存在 UA 将重新发送 POST 到新 URL 而不是切换到 GET 的风险。

不过,如果您担心 HTTP/1.0 客户端(不支持虚拟主机并且可能无法访问您的页面),那么您应该在正文中包含指向新页面的 HTML 303 响应(Apache 等 Web 服务器已经这样做了)。

关于http-status-codes - POST 后,我应该执行 302 还是 303 重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5129076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com