我创建了一个在 Windows 机器上运行的自托管 WCF 服务。现在我想使用 AJAX 调用来使用服务的操作。在 iExplorer、Firefox 和 Chrome 中,我都没有得到预期的 JSON 流。
为了允许跨域调用,我必须向自托管服务添加什么?
问候西蒙
我创建了一个在 Windows 机器上运行的自托管 WCF 服务。现在我想使用 AJAX 调用来使用服务的操作。在 iExplorer、Firefox 和 Chrome 中,我都没有得到预期的 JSON 流。
为了允许跨域调用,我必须向自托管服务添加什么?
问候西蒙
http://pranayamr.blogspot.se/2011/06/calling-cross-domain-wcf-service-using.html似乎是一篇有效的文章。您需要相应地配置您的服务。这在过去对我有用。
您必须添加额外的方法来公开跨域策略,
对于托管在 localhost\Service.mvc 上的 Service GetPerson,请使用:
$.ajax({
type: 'GET', //GET or POST or PUT or DELETE verb
url: 'Service.svc/GetPerson', // Location of the service
data: userid, //Data sent to server
contentType: 'application/json; charset=utf-8', // content type sent to server
dataType: 'json', //Expected data format from server
processdata: true, //True or False
success: function (data) {//On Successfull service call
alert(data.Name);
},
error: function (msg) {// When Service call fails
alert(msg);
}
});
链接:http ://www.cleancode.co.nz/blog/1041/complete-example-wcf-ajax-ssl-http