【问题标题】:QUnit issues with document.cookieQUnit 与 document.cookie 的问题
【发布时间】:2013-11-19 00:05:59
【问题描述】:

我正在编写一个处理我代码中所有 cookie 操作的 javascript 类的单元测试。它基本上使用 document.cookie 设置和检索 cookie

我在将此单元测试编写为 document.cookie 时遇到问题,在我的单元测试中总是返回空字符串。

我什至尝试在我的单元测试中放置一个调试器语句,然后在浏览器控制台中我尝试了这个。

    document.cookie = "name=oeschger;"

即使在浏览器控制台中输入 document.cookie 之后,它也是一个空字符串。这是怎么回事?

【问题讨论】:

    标签: javascript unit-testing cookies qunit


    【解决方案1】:

    此问题的根源在于,当您从文件系统(例如 file:///)加载网页时,cookie 将无法正常工作。这是因为 cookie 与主机绑定,当您在文件系统上工作时,您实际上并没有主机。如果您打开通过 Web 服务器托管的测试文件,您将看到 cookie 正常工作。您可以在项目目录中使用以下命令运行一个简单的 Web 服务器:

    python -m SimpleHTTPServer 8080

    我在构建一个可以帮助我操作 cookie 的对象时遇到了完全相同的问题,这是我正在从事的开源 JS 项目Sprinkles 的一部分。不幸的是,我可以在浏览器中看到测试通过,但不是通过 grunt

    【讨论】:

      猜你喜欢
      • 2012-05-01
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-26
      • 2015-12-01
      相关资源
      最近更新 更多