angularjs – 在浏览器之前设置cookie

前端之家收集整理的这篇文章主要介绍了angularjs – 在浏览器之前设置cookie前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们的( @L_404_0@)应用程序需要设置某些cookie才能加载Angular.js客户端应用程序.如果未设置cookie,则抛出异常并显示错误页面.

这意味着为了运行E2E测试,我们需要设置cookie,但是以下操作失败,因为量角器试图在browser.get调用之后找到Angular权限(它不在那里,因为异常被抛出).

browser.get('http://' + domain + '/');
browser.manage().addCookie('foo','boo','/',domain);

设置cookies后,我尝试调用browser.get:

browser.manage().addCookie('foo',domain);
browser.get('http://' + domain + '/');

但这会产生以下错误

Failed to set the ‘cookie’ property on ‘Document’: Cookies are
disabled inside ‘data:’ URLs.

有没有办法处理这种情况?也许告诉量角器在执行第一个browser.get调用或者以某种方式在调用获取URL之前为我们的域设置cookie时,不要检查Angular?

我在 Protractor Getting Started文档中找到了解决方案:
browser.driver.get('http://' + domain + '/');
browser.manage().addCookie('foo',domain);

注意browser.driver.get而不是browser.get.这将阻止量角器寻找Angular应用程序,并且可以设置cookie.然后我在其中使用另一个browser.get语句.

猜你在找的Angularjs相关文章