以下是服务器的响应(根据谷歌浏览器rest客户端):使用xhr的Javascript代码不工作?
下面是我用来发布一些数据到我们的服务器的代码片段。我想以xml输出取回数据。 记住同源策略的概念我把这段代码作为html页面上传到我们的服务器上,但没有得到任何回应。
我的代码有什么问题,或者我的方法有问题吗?
<html>
<head>
<script type="text/javascript">
function getToken()
{
var xmlhttp;
var txt,x,i;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
alert("stage 1");
xmlhttp.onreadystatechange=function()
{
alert("stage 2");
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
alert("stage 3");
xmlDoc=xmlhttp.responseXML;
txt="";
x=xmlDoc.getElementsByTagName("token");
alert("stage 4");
for (i=0;i<x.length;i++)
{
txt=txt + x[i].childNodes[0].nodeValue + "<br />";
}
document.getElementById("myDiv").innerHTML=txt;
}
}
alert("stage 5");
xmlhttp.open("POST","http://abc.mysite.com:9090/myapi/xxx",true);
xmlhttp.send("op=login&pass=xxx");
}
</script>
</head>
<body>
<center><h2>UserPreview:</h2></center>
<br />
<div id="myDiv"></div>
<br />
<button type="button" onclick="getToken()">GetToken</button>
<div data-role="footer" data-position="fixed" data-theme="a"><h4>Ver: 1.1(17112)</h4> </div>
</body>
</html>
<response><token>8768768768768768</token></response>
为什么你不使用jQuery,这使得你所有的发布更容易! – 2012-01-17 08:59:29
您可以使用dojo/jQuery,它们具有为您使用ajax的功能! – 2012-01-17 10:20:17
@mrana,你有没有看过我的回答,然后试试? – netadictos 2012-01-17 18:16:29