一个 JavaScript 应用程序运行在10.0.0.1
尝试通过跨域 ajax 调用来验证其用户。
该请求如下所示:
function test(again){
$.ajax({
type: 'GET',
url: 'http://example.com/userinfo',
dataType: 'json',
success: function(userinfo){
if(again)
test(false);}});}
test(true);
服务器的第一个响应尝试设置 cookie:
Access-control-allow-origin:http://10.0.0.1
Set-Cookie:PHPSESSID=uuj599r4k1ohp48f1poobil665; expires=Sat, 28-Jan-2012 17:10:40 GMT; path=/
但第二个请求不包含此 cookie,也不包含对该域的任何其他 ajax 请求。
我并不是想读取另一个域的 cookie,我只是希望另一个域上的应用程序能够设置和读取自己的 cookie。
这可能吗?
我已经在 Chrome 和 Firefox 9 中进行了测试。
服务器应设置标头:
response.Headers.Add("Access-Control-Allow-Credentials", "true");
客户端设置为:
xhrFields: {
withCredentials: true
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)