【发布时间】:2012-03-17 18:37:40
【问题描述】:
我正在调查来自本地(file:// 访问)html 应用程序的 .NET WCF 域服务的跨域使用情况。该应用正在使用 jQuery 进行 AJAX 调用。
在服务器上未进行身份验证(即使用匿名身份验证)的情况下,我已成功检索到 JSON 格式的数据,其中 CORS“Access-Control-Allow-Origin: *”标头已就位,JSONP 格式没有标头。
现在我正在尝试了解当身份验证和 CORS 标头与 JSON(不是 JSONP)格式数据一起到位时的行为。
下面的 jQuery 代码将向服务器发送一个请求,服务器又以“HTTP/1.1 401 Unauthorized”响应。
$.ajax({
url: myUrl,
dataType: 'json',
cache: false,
complete: function () { /* do stuff */ },
timeout: 5000,
data: myData
});
下面的jQuery代码没有向服务器发出请求,立即抛出异常“Access to restricted URI denied”,代码1012。
$.ajax({
url: myUrl,
dataType: 'json',
cache: false,
complete: function () { /* do stuff */ },
timeout: 5000,
username: "chris",
password: "password",
data: myData
});
我理解并期待第一种情况。谁能向我解释第二种情况的例外情况?我希望至少会提出请求。
编辑:Grrr,这是在 FF 10.0.2 中。 Chrome 似乎按照我的预期运行,这是 FF 问题吗?
【问题讨论】: