我已经尝试过同步和异步方法。我已经测试了许多线程中建议的所有不同的东西,但我仍然不断收到上面的错误。
对于 IE,我得到“无传输”,在 FF 中得到一个可怕的“异常...”失败“nsresult:“0x80004005 (NS_ERROR_FAILURE) ”。
当我从浏览器中的 URL 行访问该服务时,我会看到返回的文本,表明该服务已启动并正在运行。( MyCloud.azurewebsites.net/MyService.svc/Ping )
但是当我尝试使用这个 JS 访问它时它不起作用。
$.ajax({
cache: false,
async: false, //have tried true too
type: "GET",
url: "http://MyCloud.azurewebsites.net/MyService.svc/Ping",
datatype: "text",
success: function (response) { ... },
error: function (xhr, requestStatus, errorText) { ... }
});
我测试了不同的浏览器(Chrome 除外)。由于 CORS 问题,我测试了声明一个不同的端点,并对安全性(传输而不是无)进行了一些更改。我仍然会遇到错误。而寻找那些只会带来更多的困惑。
现在,我已经与这个问题斗争了一天多,我决定构建故障排除。
- 上面的JS完全正确吗?
- 以下端点定义和服务声明是否也正确?
- 我还能测试什么?我该如何探究这个问题?
<endpoint name="UrlEndPoint"
behaviorConfiguration="UrlEndPointBehavior"
address=""
binding="webHttpBinding"
contract="MyNamespace.IMyService"/>
<behavior name="UrlEndPointBehavior">
<webHttp helpEnabled="true"/>
</behavior>
[OperationContract]
[WebInvoke(UriTemplate = "Ping", Method = "GET")]
String Ping();
我现在完全迷路了,病了,累了。朝着正确的方向推进会很棒。