gpt4 book ai didi

post-redirect-get - 没有重定向/GET 的 POST?

转载 作者:行者123 更新时间:2023-12-02 00:26:54 25 4
gpt4 key购买 nike

我的一位同事致力于防止重复提交表单(成功提交后,我们会收到电子邮件并创建数据库条目)。如果表单上有错误,则提交不成功。

我正在审查他的代码,我注意到他只在成功提交时使用了 P/R/G。如果不成功,表单提交仍会在刷新/重新访问时重复。我在评论中注意到了这一点,但他争辩说他没有看到每次重定向都有好处,因为不成功的提交被忽略了。我注意到,如果用户刷新页面或在历史记录中重新访问它,他们仍然会在主要浏览器中收到“CONFIRM FORM RESUBMISSION”警告。

这足以成为每次 POST 后重定向的理由吗?无论是否,即使提交是幂等的(由于表单中的错误),在 POST 之后是否还有其他原因重定向?是否有任何理由让您在提交表单后重定向?

最佳答案

主要原因是每个现代浏览器在 POST 操作后点击“后退”或“重新加载”按钮时都会打开令人讨厌的对话框(人们经常这样做,无论您是否愿意),警告您即将进行 POST 重新提交。我当然理解他们为什么选择这样做,但这确实意味着作为程序员,我们竭尽全力确保用户不必看到消息。

因此,我不同意那些说在不成功的帖子后没有理由重定向的人。理论上不应该有,是的,但是由于浏览器的用户界面问题,是的,您绝对需要。

关于post-redirect-get - 没有重定向/GET 的 POST?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8546171/

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