Javascript Readystate始终为0
我正在开发phonegap应用程序。我需要通过.NETWebService验证用户。我正在使用ajax通过javascript对其进行验证和解析,但我仍然停留在readystate上,因为它总是返回零。我从网上找到的可用解决方案中尝试了很多东西,但都做得不对 以下是我的Javascript:Javascript Readystate始终为0,javascript,android,ajax,soap,cordova,Javascript,Android,Ajax,Soap,Cordova,我正在开发phonegap应用程序。我需要通过.NETWebService验证用户。我正在使用ajax通过javascript对其进行验证和解析,但我仍然停留在readystate上,因为它总是返回零。我从网上找到的可用解决方案中尝试了很多东西,但都做得不对 以下是我的Javascript: username = 'ksl'; password = 'ksl'; var soapMessage = '<soap:Envelope xmlns:xsi="http://www
username = 'ksl';
password = 'ksl';
var soapMessage =
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> \
<soap:Body> \
<CheckLogin xmlns="http://tempuri.org/"> \
<UserName>' + username + '</UserName> \
<Password>' + password + '</Password> \
</CheckLogin> \
</soap:Body> \
</soap:Envelope>';
$.ajax({
url: validationURL,
type: "POST",
dataType: "xml",
data: soapMessage,
success: validate,
contentType: "text/xml; charset=\"utf-8\"",
error: function(xhr,status,error)
{
alert("state is:" + xhr.readyState);
}
});
return false;
username='ksl';
密码='ksl';
var soapMessage=
' \
\
\
“+用户名+”\
“+密码+”\
\
\
';
$.ajax({
url:validationURL,
类型:“POST”,
数据类型:“xml”,
数据:soapMessage,
成功:验证,
contentType:“text/xml;字符集=\“utf-8\”,
错误:函数(xhr、状态、错误)
{
警报(“状态为:+xhr.readyState”);
}
});
返回false;
下面是我的Web服务回应:
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CheckLoginResponse xmlns="http://tempuri.org/">
<CheckLoginResult>string</CheckLoginResult>
</CheckLoginResponse>
</soap:Body>
</soap:Envelope>
HTTP/1.1200正常
内容类型:text/xml;字符集=utf-8
内容长度:长度
一串
任何回复都会很有帮助好的..我发现了问题:: 1)
\
后面有空格,所以我删除了它
2) 我在html中做了一些更改,效果很好
感谢您关注我的问题。这是一个跨域请求吗?很抱歉我对javascript和ajax的无知。。但这里我使用的是phonegap,我使用的是javascript和ajax。webservice来自.net。它是跨域的吗?我没有使用phonegap的经验,但在普通的web浏览器中,您不允许将ajax请求发送到其他主机-这是我想到的第一件事,因为您经常看到readystate 0中的请求因此跨域策略而消亡。好的。我知道了。不,它不是跨域的。。