0

我正在使用 ajax 调用网络服务。servcie 接受 2 个参数并以 JSON 格式返回数据。

但是当我调用 webservice 时,它​​不会被调用。警报抛出异常 UNDEFINED

我不知道为什么会这样。整个html代码如下。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="utf-8" http-equiv="encoding">
<title>Decision Maker</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">


$(document).ready(function () {
$("#SayHello").click(function (e) {

$.ajax({
type: "POST",
data: "{'userName':'5021','Password':'35A3C84D'}",
url: "http://www.iclinic247.com/authenticateusers.asmx/LoggedUserAuthentication",
contentType: 'application/json; charset=utf-8',
dataType: "json",
success:
function (data) {
alert('Success');
alert(data);
},
error:
function (XMLHttpRequest, textStatus, errorThrown) {
alert('Fail');
alert(errorThrown);
}
});
});
});



</script>
</head>
<body>
<input id="name" /><a id="SayHello" href="#">Greetings!</a>
</body>
</html>

谁能告诉我是什么问题

4

2 回答 2

1

如果您可以在 Firefox 中使用 Firebug 控制台或F12在 Chrome 中使用开发者选项控制台(通过使用密钥),那么您可能会收到如下错误消息:

Failed to load resource: the server responded with a status of 404 (Not Found)
XMLHttpRequest cannot load http://www.iclinic247.com/authenticateusers.asmx/LoggedUserAuthentication. Origin null is not allowed by Access-Control-Allow-Origin.

所以基本上,服务器端的问题和你的这部分前端代码是正确的。404所以要么你有一个拼写错误的网址,要么这里告诉我们的其他东西很傻。

于 2013-02-13T19:57:38.683 回答
0

在与我的前辈讨论了这个问题后,我才知道问题是由于CROSS-DOMAIN CALLING造成的。

*我通过将我的服务设为 RESTFUL 服务(即我的服务的 API)解决了这个问题。*

于 2013-03-12T08:38:34.200 回答