WebService与共享COOKIE
?
WebService与共享COOKIE 左直拳
?
现在有两个网站:www.abc.com,check.abc.com。要求用户打开邮件时,访问check.abc.com,保存COOKIE。以后用户访问www.abc.com,则检查COOKIE。如果发现在check.abc.com上有COOKIE,则自动登陆。 这大概跟单点登陆有点类似。我刚开始的设想是:在check.abc.com上提供一个WebService,供www.abc.com调用来检查COOKIE。 但是,在本机上直接用浏览器访问WebService检查,可以准确读取check.abc.com 保存的COOKIE;而运行同样放在本机上的www.abc.com,通过www.abc.com上的页面调用WebService,却怎么也读不出COOKIE。调试了很久,查阅了许多资料都没有结果。 后来有篇文章介绍说:COOKIE可以自动由子级域名分享,无须做什么特别设置。对网站www.abc.com,check.abc.com来说,它们都是二级域名,一级域名是abc.com。所以,保存COOKIE的时候,将Cookie的Domain设置成“.abc.com”,无论www.abc.com还是check.abc.com,应该都可以顺利读取。代码如下 ??? public void WriteToCookie(int userId) ??? { ??????? HttpCookie cookie = new HttpCookie(“UserInfo”); ??????? cookie.Values.Add(“UserId”,userId.ToString()); ??????? cookie.Expires = DateTime.Now.AddHours(1); ??????? cookie.Secure = false; ??????? cookie.Domain = ".abc.com"; ??????? HttpContext.Current.Response.Cookies.Add(cookie); } 可是照样不行! 老子一生气,将WebService去掉了,在www.abc.com里直接读取,一读就读到了。 去他娘的WebService。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |