【问题标题】:Copy cookie to other domain. Firefox? Chromium?将 cookie 复制到其他域。火狐?铬?
【发布时间】:2011-05-28 20:52:34
【问题描述】:

是否有可能将一组 cookie 从一个域复制到另一个域。我非常需要这个来进行 Web 开发。

【问题讨论】:

  • 请添加更多细节。你想做什么?你想解决什么样的问题?
  • 如果这是域迁移,请让用户登录旧站点,然后旧站点可以将完整的 cookie 发布到新站点的 URL。瞧,cookie 已迁移
  • @Pekka: 我需要相同的 cookie 用于 localhost 和全局域,这些 cookie 只能由全局域服务器生成。
  • @sehe:不,这是为了开发目的。
  • 你想做什么?你想解决什么样的问题?

标签: firefox cookies chromium


【解决方案1】:

您不能只复制一组 cookie,但您可以编写自己的 php/python 代码,为另一个域设置多个 cookie 并使用旧组中的值。

【讨论】:

  • 我试过这个,但我认为浏览器禁止为不同的域设置cookies...实际上没有设置cookies。
  • 没错,你不能为其他域设置cookie,但是......你可以创建具有适当域名的虚拟主机并设置你的/etc/hosts文件,这个域名指向localhost的原始来源。这一次您可以为任何您喜欢的域设置 cookie。
【解决方案2】:

不,same origin policy 禁止网站代表其他网站设置或读取 cookie,但少数特殊情况除外。不过,某些浏览器扩展程序允许您复制和粘贴 cookie 以手动同步它们。

【讨论】:

  • 这就是我问的原因。我不希望 site 复制 cookie,因为我知道这是不可能的,而是 browser (extension/plugin/add-on/...) .
【解决方案3】:

从您的 cmets 看来,您希望在开发和生产系统中使用相同的 cookie。使用“local.example.com”之类的东西而不是“localhost”作为您的开发域并为所有子域设置通配符 cookie 怎么样?

我们使用这种模式,因此我们不需要为 web 服务注册多个 API 密钥,因为它们中的大多数都支持子域的通配符。

我不确定我是否会推荐这样的东西,以便您能够在开发和生产中使用相同的 cookie,因为它还有其他含义。例如,如果您从另一个子域发送静态资产,那么浏览器将不必要地发送 cookie 标头信息,当然可能会有更多细节可能使调试更难,而不是更容易。

如果您可以更详细地解释手头的问题,则可能有其他解决方案或用于暂存和生产环境的最佳实践可以帮助您。

【讨论】:

    【解决方案4】:

    您可以使用油脂猴手动执行此操作。

    转到工具->页面信息。 选择安全选项卡。 查看 cookie 按钮。 键入您要读取的域。 记下所有 cookie 及其内容。 现在转到您要复制到的域。 为Firefox安装greasemonkey插件(或者更好的是,使用Cookies Manager+ :: Add-ons for Firefox!)。 运行一些 javascript 代码来重新创建提到的 cookie 及其值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      • 2013-05-08
      相关资源
      最近更新 更多