asp.net(C#)跨域及跨域写Cookie问题

 更新时间:2011年10月11日 01:10:57   作者:  
在网站www.A.com下通过iframe或ajax调用www.B.com下的内容时,默认情况下IE会阻止www.B.com写任何Cookie
解决方法是:
复制代码 代码如下:

//www.B.com里的被调用的页面需要写P3P头,从而解除IE对写Cookie的阻止
context.Response.AddHeader("P3P", "CP=CAO PSA OUR");

//www.A.com里通过ajax调用www.B.com里的内容时,是跨域访问,需要使用jsonp,为配合其工作需要添加下面两句,生成jsonp返回
context.Response.ContentType = "text/plain";
context.Response.Write(string.Format("{0}('OK')", context.Request["callback"]));


复制代码 代码如下:

//jsonp调用进行跨域访问
jQuery.ajax({
url: url,
type: 'GET',
data: data,
dataType: 'jsonp',
success: function (data) {
window.location.href = toURL;
}
});

相关文章

最新评论