Jquery无法从WCF REST服务获得响应

我已经开发了WCFrest服务并将其部署在可以通过浏览器访问的链接上,因为它的操作是“GET”。

我想使用jQuery获取该数据。 我尽力让WCf使用jQuery获得响应但是徒劳无功。 我也试过$ .Ajax和’jsonp’没有运气。 谁能帮我?

该url是: http : //www.lonestarus.com/AndroidApp/AndroidLocation.svc/RestService/getLatestLocation

您可以通过在浏览器中粘贴url来检查该url响应。

您需要在响应头中将Access-Control-Allow-Origin设置为值[*]。

此博客提供了有关如何在WCF REST服务中完成的更多详细信息

如果您要在Web API中执行此操作,则可以添加

Response.Headers.Add("Access-Control-Allow-Origin", "*") 

用小提琴调用服务

 $(function() { $.ajax({ url: "http://www.lonestarus.com/AndroidApp/AndroidLocation.svc/RestService/getLatestLocation", datatype: 'json', type : 'get', success: function(data) { debugger; var obj = data; } }); })​;​ 

我收到了错误

XMLHttpRequest无法加载http://www.lonestarus.com/AndroidApp/AndroidLocation.svc/RestService/getLatestLocation 。 Access-Control-Allow-Origin不允许使用来源http://fiddle.jshell.net 。

我无法通过跨域示例向您展示

 $('#a').load('http://www.lonestarus.com/AndroidApp/AndroidLocation.svc/RestService/getLatestLocation​​​​​​​​​​​​​​​​​?callback=run');​ 

那些事情已经确定会有用。

您的服务需要启用JSONP回调或设置Access-Control-Allow-Origin标头以使跨域请求生效,或者您需要从同一域运行脚本。 鉴于您的url说AndroidApp,我认为您想要跨域。

示例代码如下:

 $.ajax ( { type: 'GET', url: http://www.lonestarus.com/AndroidApp/AndroidLocation.svc/RestService/getLatestLocation, cache: false, async: true, dataType: 'json', success: function (response, type, xhr) { window.alert(response); }, error: function (xhr) { window.alert('error: ' + xhr.statusText); } } );