【问题标题】:How to get cookies from a headless browser provided by HtmlUnit in Java?如何从 Java 中 HtmlUnit 提供的无头浏览器获取 cookie?
【发布时间】:2014-11-17 22:58:32
【问题描述】:

我正在使用 HtmlUnit 驱动程序来生成无头浏览器。我需要 cookie 信息提前运行测试。虽然我能够检查元素,但我无法得出 cookie 信息。 请帮忙。

【问题讨论】:

    标签: cookies webdriver headless-browser


    【解决方案1】:

    您可以使用driver.manage().getCookies();driverHtmlUnitDriver 的实例)从 HtmlUnitDriver 获取 Cookie 信息。

    这是打印 Cookie 名称及其值的示例 Java 代码:

    Set<Cookie> allCookies = driver.manage().getCookies();
    for (Cookie cookie : allCookies) {
    System.out.println(String.format( "%s -> %s" , cookie.getName(), cookie.getValue()));
    }
    

    【讨论】:

      【解决方案2】:

      另外如果你知道要获取值的Cookie的名称,你可以直接使用getCookieName方法。

      方法名:getCookieNamed(java.lang.String name)
      语法:driver.manage().getCookieNamed(CookieName);
      目的:获取具有给定名称的 cookie。
      参数:CookieName - cookie 的名称
      返回:它将返回指定名称的 cookie 值,如果没有找到具有
      给定名称

      的 cookie,则返回 null

      【讨论】:

        【解决方案3】:

        这是我用的。

        Cookie cookie = new Cookie("key", "value");
              driver.manage().addCookie(cookie);
              Set<Cookie> allCookies = driver.manage().getCookies();
              for (Cookie loadedCookie : allCookies) {
                System.out.println(String.format("%s -> %s", loadedCookie.getName(),  loadedCookie.getValue()));
                }
        

        【讨论】:

          猜你喜欢
          • 2011-01-06
          • 1970-01-01
          • 2015-03-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-09-22
          • 2012-10-28
          • 2017-12-24
          相关资源
          最近更新 更多