![](/img/trans.png)
[英]What charset to use when sending a response to a javascript XMLHTTPRequest 'get' request
[英]XMLHttpRequest Sending GET Request When Opening with POST
我在網頁上編寫了一個基本功能,以便將數據發布到Web服務器上的另一個頁面,但是,每當我使用此功能提交時,服務器都會報告已收到沒有表單數據的GET請求。
不幸的是,在整理問題時我完全不知所措,因為我不知道是什么原因造成的。
function submit_function(event){
event.preventDefault();
var req = new XMLHttpRequest();
var fd = new FormData();
fd.append("username", "username");
fd.append("password", "password");
req.open("POST", "/auth/login", true);
req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
req.send(fd);
return false;
}
任何幫助或見解都值得贊賞,它來晚了,我很可能會錯過一些明顯的東西。
問題是由表單提交干擾請求引起的,因為它是嵌套的。
document.getElementById("formid").onsubmit = function(e){ submit(e); }
通常的原因是您的代碼是由表單提交觸發的,並且您沒有取消表單提交,因此瀏覽器發送表單(作為GET,顯然表單元素上沒有type="POST"
)並且這會阻止ajax調用的實際執行(即使您的代碼運行啟動了它,也要撕毀頁面以將其替換為表單提交的結果來阻止它)。 只要確保您阻止表單提交( event.preventDefault()
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.