我正在使用jQuery 1.8.1来执行CORS。即使这个问题已经在其他帖子中打开了,但我无法得到解决方案。
所以基本上我在http://foo.com:8080/static.html上运行一个静态HTML页面,它正在对http://bar.com:4503/test.json进行跨域AJAX请求调用。下面是jquery的片段:
$.ajax({
url: response,
type: 'get',
crossDomain:true,
username:'admin',
password:'admin',
xhrFields: {
withCredentials: 'true'
}
//,async: false
});
每当我执行此操作时,我在chrome调试器中得到以下异常:
访问受限制的URI“代码:”1012“
在控制台中我收到错误
XMLHttpRequest无法加载http://bar.com:4503/test.json。 Access-Control-Allow-Origin不允许原点http://foo.com:8080。
但是,我可以说,我在浏览器的另一个标签页中的http://bar.com:4503中登录该应用。然后,如果要再次发出请求,AJAX调用将成功完成。 而且我也看到cookie登录信息在Request Header中传递。
我可以确认在我的服务器响应中我正在使用适当的值添加标头Access-Control-Allow-Origin,而不是通配符(*)条目。响应头Access-Control-Allow-Credentials也设置为true。
是否需要设置其他配置才能执行身份验证?
感谢。