我創建在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