Jos*_*ith 3 cookies firefox google-app-engine tld
为了测试一些东西,我一直在使用在.appspot.com域上设置cookie的技巧,这允许我在两个不同的.appspot.com GAE应用程序之间共享数据.这已经停止在Firefox 6中工作了,谷歌的一个人告诉我:
这是因为appspot.com被添加到现有浏览器不允许设置cookie的域的公共后缀列表中:http: //mxr.mozilla.org/mozilla-central/source/netwerk/dns/effective_tld_names.dat?原料= 1
这对普通用户来说完全有意义.但是对于我的测试,我真的希望将FF视为.appspot.com作为常规域,而不是"有效TLD".有没有办法"白名单".appspot.com或以其他方式覆盖FF中使用的effective_tld_names.dat?
(我需要一个可以在OS X上运行的hack,以防万一.)
不幸的是,没有支持的方法来做到这一点.我检查了实现nsCookieService和方法SetCookieStringInternal将拒绝任何无法从中获取基本名称的主机名(现在是"appspot.com"的情况 - 对于Firefox引擎,这不再是一个完整的主机名).这意味着除了通过"手动"写入数据库之外,甚至扩展都不能为"appspot.com"设置cookie.但这在这里没有多大帮助,因为方法GetCookiesFromHost还使用基本域进行检查,以便忽略"appspot.com"的任何cookie.
鉴于effective_tld_names.dat被编译到xul.dll中,更改此数据的唯一方法是在此文件上使用十六进制编辑器,例如将"appspot.com"替换为"bppspot.com",这应该"禁用"此规则.请注意,这样的操作会破坏增量更新,您必须在更新后重复此操作.
| 归档时间: |
|
| 查看次数: |
542 次 |
| 最近记录: |