所以我有一个基本的WCF服务供直接jQuery / HTML使用,没有asp.net。
我可以通过浏览器对我的test.svc / test进行GET调用,并获得我预期的JSON结果。 的 { “d”:[ “测试1”, “TEST2”, “TEST3”]}
现在,我正在尝试通过jQuery 1.4.x
来使用它$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
dataType: "json",
url: methodUrl,
data: {},
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "application/json");
},
success: successCallback,
error: failedCallback
});
我正在抓取错误信息并将其转储到控制台,这是我的错误。 日志:{“readyState”:4,“status”:0,“statusText”:“error”} 日志:“错误” 日志:{“消息”:“访问被拒绝。\ r \ n”,“描述”:“访问被拒绝。\ r \ n”,“数字”: - 2147024891}
我读过我需要使用JSON-P和/或crossDomainScriptAccessEnabled或其他30个东西。
到目前为止,我还没有看到这个问题的一致解决方案。
任何帮助都将不胜感激。
谢谢! 乔恩
答案 0 :(得分:0)
无论如何,这对我们的情况来说似乎是一种破坏。
我们正在使用MS Dynamics CRM 2011,它只允许使用JS的普通html页面,并且只支持IE。
我们最终运行了另一个WCF服务,该服务与CRM(破坏要求)位于同一个盒子上,这只是一个代理,反过来调用我们位于另一个盒子上的真实WCF服务。
这很愚蠢,增加了维护的开销,但我们至少能够继续生成JSON而不是JSON-P,以便其他消费者也可以使用它。