我创建在Visual Studio两个项目2010是一个Web服务,另一个是Web应用程序,我对Web服务的方法如下:当地Ajax调用成功,但没有数据返回
`[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "json/getData")]
List<Objects> TestCall();`
一旦我运行的服务我可以高兴地键入URL,以获得JSON响应:
http://localhost:17258/RestService.svc/json/getData
结果
{"TestCallResult":[{"id":1,"name":"Title"}, {"id":2,"name":"Title"},{"id":3,"name":"Title"},{"id":4,"name":"Title"}]}
但是在我的web应用程序,当我试图使这个Ajax调用来获得这种反应我从通话成功,但JSON是零,这是我的Ajax调用:
`$.ajax({
url: "http://localhost:17258/RestService.svc/json/getData",
type: "GET",
mimeType: "application/json",
dataType: "json",
cache: false,
success: function (json, status) {
alert("Success JSON=" + json + ", status=" + status);
var obj = jQuery.parseJSON(json);
for (var i = 0; i <= obj.length; i++) {
alert(obj[i].id);
}
}
});`
我m尝试在FireFox和JSON变量回来为空,当在IE调试器调试时,我可以添加一个手表的对象,并可以看到该对象有它下面的数组,我需要使用json.TestCallResult,而不是有其他人看到IE和FireFox之间的这种差异或可以有人说,不要做一个noob,并做到这一点...
谢谢
是您的网站(一个要从中调用Web服务)也坐落在localhost:17258或做服务器响应端口17258发送一个报头包含访问控制允许-Origin设置? – devnull69
当你在IE中调试哪个值有json var? – JotaBe