当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 二级域名或跨域共享Cookies的实现方法

Javascript
base64编码/解码
数字日期转化为汉字日期格式
事件驱动的JScript面对象编程
计算24点
事件驱动的JScript面对象编程(例)
JavaScript基础实例:如何计算24点
删除数组元素.
用Javascript写的一个映射表类
JavaScript通用库(一)
TreeView(扩充XMLSelTree)(二)
如何在网页中调试JavaScript
可编辑的 HTML JavaScript 表格控件 DataGrid
JavaScript学习:删除数组元素
JavaScript数字日期转化为汉字日期格式
在网页中控制wmplayer播放器
排序Select中Option项的一个示例
可编辑的 HTML JavaScript 表格控件 DataGrid II
让网页自动穿上外套
javascript表单之间的数据传递!
用Javascript写的一个映射表(MAP)类--续

Javascript 中的 二级域名或跨域共享Cookies的实现方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 305 ::
收藏到网摘: n/a

适用于Asp。 在主域名设置的Cookie,在各子域名共用;适用于博客等提供二级域名。这个问题,以网上有众多帖子,可惜都没有完整解决。
注意点:
1、当你有一个Cookie组(或叫Cookie字典)使用Domain属性指定域名之后,当你在对该组的成员进行修改或新增的时候,一定要在操作之后加上Resonse.Cookies(cookieName).Domain属性。
2、如果没有必要,请不要修改已设置Domain的Cookie组,直接使用Response.Cookies("CookieText") = CookieValue 来创建一个新的Cookie。对于每个独立的Response.Cookies("CookieText") ,不管有无字典,都一次性写入,如果需要在多次写入,换一个Response.Cookies("CookieText") 。这点很重要。
3、Response.Cookies("cookieName").Secure = False,Secure属性一定要是false
例子:
Response.Cookies("Uto")("UtorName")=UtorName
Response.Cookies("Uto")("UtorPwd")=UtorPwd
Response.Cookies("Uto").Domain="utoper.com"
Response.Cookies("Uto").Secure =False
4、IE对于.cn短域名的支持有重大BUG,没办法写入Cookies,有人测试了:http://blog.csdn.net/xssh913913/archive/2007/08/04/1725882.aspx 解决办法:
如h5.cn域名,在h5.cn所有子域名中,不管从哪个子域名接收的信息,都发往h5.cn这个域名进行写入Cookies,写入时不要设置域名,即这两句不要。
Response.Cookies("User").Domain = "h5.cn"
Response.Cookies("User").Secure =False
这样,在其他任何子域名调用Cookies时就能正常。