我实现了Post-Redirect-Get模式,以避免刷新网页为用户提供重新发布数据的机会。
重定向正在服务器端完成,位置标题和“302对象移动”。
只有现在,当我点击后退按钮以浏览表单到原始页面(从中到达表单)时,一旦我登陆帖子页面,它就会重定向,向前踢我而不是让我保持回到历史。
有解决方法吗? javascript:window.location.href = window.location.href
?
重新访问表单,输入新数据并再次发布很好。但我希望实际的帖子事件本身完全脱离历史。为什么浏览器甚至会放入返回永久重定向的历史堆栈URL?
更新
显然我错了什么。我刚刚测试了一个简单的vanilla-post-redirect-get案例,后面的按钮按预期工作。抱歉浪费了你的时间......
答案 0 :(得分:0)
推荐的重定向方式是带有HTTP 302 Found
标头的Location:
响应。
如果您尝试在Javascript中执行此操作,location.replace(url)
会在替换浏览历史记录中的当前网址时导航到新网址。