所以我开始使用 PhoneGap/Cordova(Windows 手机)和 WCF 休息服务,但是,我在让模拟器与 WCF 服务交互时遇到问题。
起初我在想可能是模拟器无法连接到本地 WCF 服务,所以我在外部主机上发布了 WCF 服务,但是问题仍然存在……即仍然无法调用 WCF 服务。
我的代码如下所示:
PhoneGap 应用程序的 javascript 文件如下:
function getAjax() {
var jqxhr = $.ajax({
url: 'http://link.to.service.com/service1/',
//headers:
beforeSend: function (xhr) {
//xhr.overrideMimeType('text/plain; charset=x-user-defined');
},
dataType: 'json'
})
.done(function (data) {
var element = document.getElementById('ajaxCall');
element.innerHTML = JSON.stringify(data, null, "\t");
})
.fail(function (xhr, status, error) {
showError(error);
})
.always(function () { showAlert("complete"); });
}
然后 WCF 服务包含以下方法:
[WebGet(UriTemplate = "")]
public List<SampleItem> GetCollection()
{
return new List<SampleItem>()
{
new SampleItem()
{
Id = 1,
StringValue = "Hello" }
};
}
因此,当对 javascript 方法“getAjax”的调用完成时,应该调用 WCF 服务方法,但是它会继续进入失败函数,而不是显示错误消息“未定义”。
我在这里错过了什么吗?