的XMLHttpRequest:POST请求状态
问题描述:
我的代码,例如部分:的XMLHttpRequest:POST请求状态
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://someurl.com", true);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
doSomeTask();
}
}
}
xhr.send('login=mylogin&password=mypassword');
我怎么能知道我的登录密码&是正确的?在两种情况下,xhr.status都是200.
答
无效的登录/密码尝试不是HTTP失败。只有HTTP失败才会返回4xx或5xx返回码。您可能希望使用响应中的xhr.responseText或xhr.responseXML来查看您的后端正在返回的内容,并根据此决定您的决定。请参阅http://www.w3.org/TR/2006/WD-XMLHttpRequest-20060405/#dfn-responsetext了解如何获得回复。
此外,还有一些隐藏使Ajax调用的复杂性吨良好的Javascript框架。 JQuery使调用AJAX脚本的工作变得非常简单。您可能想要对此进行调查,而不是编写原始XHR代码。
控制台中显示的内容是什么? //'if(xhr.status == 200){console.log(xhr.responseText)}' – 2012-02-05 12:23:36