当我意识到我的所有表单帖子都收到302响应时,我正在调试我的网站,但它运行正常。 我处理POST的方式是通过JS,使用XMLHttpRequest,如下所示:
HTML
<form method="POST" onsubmit="return submitFn(this)">
JS
submitFn = function(formElement) {
var formdata = new FormData(formElement);
var xhr = new XMLHttpRequest();
xhr.open(formElement.method, "/formaction", true);
xhr.addEventListener('readystatechange', function(e) { ... }
xhr.send(formdata);
return false;
}
据我所知,返回false避免HTML POST,所以我可以用JS处理它。一切正常但是当我在调试器控制台(Chrome或FF)中看到“网络活动”时,“编队”页面有302响应,是吗?或者我犯了错误?
答案 0 :(得分:0)
301:永久重定向
302:临时重定向
303:将请求方法重定向并更改为GET
307:重定向并保留请求方法
302是一条警告消息,告诉您要求的URL将来可能会更改。
我发现这个问题类似于你的要求
答案 1 :(得分:0)
您的编队页面正在发回302响应。它与您的xhr代码无关。可能形成的是在HTTP响应中放置一个Location
标头,该标头占302.由于请求是通过xhr进行的,因此您的浏览器不会重定向,这就是为什么一切正常。