java - 即使我在正确的域中,Selenium addCookie 也会出现无效的 Cookie 域异常

标签 java selenium groovy geb

所以我正在尝试使用 Selenium/Geb 将以前保存的 cookie 加载到我的网络驱动程序中。首先我转到域,然后尝试添加 cookie。但是 cookie 域和 url 域不相互注册:

Caught: org.openqa.selenium.InvalidCookieDomainException: 
You may only add cookies that would be visible to the current domain: .domain=.example.com => .www.example.com
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-0  8-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '3.2.0-48-generic', java.version:   '1.6.0_27'
Driver info: driver.version: unknown

cookie 的域似乎是 .example.com以及访问 http://example.com 时访问的域是 .www.example.com .我能想到的唯一解决方案是覆盖某种方法来欺骗我当前的域,但我不知道如何去做。

最佳答案

我有一个有点类似的问题,我在没有明显原因的情况下收到“您只能为当前域设置 cookie”错误。

我通过剥离除 name 和 value 之外的所有参数的 cookie 来解决它:

(Python)

cookies = pickle.load(open("cookies.pkl", "rb"))
for cookie in cookies:
    print cookie
    new_cookie={}
    new_cookie['name']=cookie['name']
    new_cookie['value']=cookie['value']
    driver.add_cookie(new_cookie)

关于java - 即使我在正确的域中,Selenium addCookie 也会出现无效的 Cookie 域异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19149034/

相关文章:

java - Java中如何检查数组中的元素是否存在

java - 从 spring 检索代理实例

javascript - 如何使用 Protractor 配置文件的参数来选择步骤?

java - 如何在 Selenium 2 中选择/获取下拉选项

Groovy:包范围的构造函数

grails - 奇怪的记号

Java/HtmlUnit - 如何从 HtmlImageInput 获取 HtmlImage?

java - 获取NoSuchElementException : no such element: Unable to locate element

spring - 创建自定义AuthenticationSuccessHandler并在完成后调用默认的AuthenticationSuccessHandler

Java 数组移位引用