gpt4 book ai didi

google-chrome - Chrome/Firefox 在通过 (Watir-)Webdriver 调用时不保留 cookie?

转载 作者:行者123 更新时间:2023-12-02 00:50:26 25 4
gpt4 key购买 nike

我正在为客户使用 Ruby 和 Watir 开发一个项目。他要求在重新加载应用程序时恢复 session (以便保存他的登录状态)。这是 Chrome 的正常行为(看起来),Firefox 也可以选择执行此操作。

我已经尝试了我能想到的一切,但似乎无法使用 watir-webdriver 来实现此功能。我已指定 Watir 使用特定的配置文件(您认为这会解决问题),并确保所有设置都正确(确实如此,因为它们在我自己启动浏览器时起作用)。我尝试过 Chrome 的各种开关和配置文件选项,我认为可能会有所帮助。没什么。

所以,问题是,为什么会发生这种情况,我可以采取什么措施来解决或解决这个问题?此时我几乎完全没有想法了。我什至尝试在 IRB 中手动保存并重新加载 cookie,但无济于事......

我知道这一定是可能的,因为当我手动登录网站,关闭浏览器,然后重新打开它时,我仍然登录。我需要重现这个确切的行为,但是在某个地方出了问题Chrome/Firefox 的手动实例与 Watir 控制的实例之间。

最后,我要提到的是,我注意到当我指定我的个人资料时,它会加载我的历史记录条目,但不会加载任何 cookie。这让我越来越困惑。

如果有人能帮助我,我将不胜感激。

最佳答案

我相信,根据设计,webdriver 总是以干净的 cookie 方式开始 session 。

当您尝试进行模拟关闭和重新打开浏览器的测试时,这可能会让事情变得有点棘手(这实际上在很多方面,测试浏览器而不是网站,因为网络服务器确实有无法知道浏览器已关闭并重新打开)

如果您想尝试保存和恢复 cookie,请阅读一些 webdriver 文档,在关于 cookie 的部分中会提到一个重要的警告

Before we leave these next steps, you may be interested in understanding how to use cookies. First of all, you need to be on the domain that the cookie will be valid for. If you are trying to preset cookies before you start interacting with a site and your homepage is large / takes a while to load an alternative is to find a smaller page on the site, typically the 404 page is small (http://example.com/some404page)

因此,如果您打算尝试保存 Cookie,然后在浏览器弹出后恢复它们,则在尝试重新创建 Cookie 之前,您可能需要导航到网站上的某个位置。

我会通过 IRB 尝试一下,看看会得到什么

关于google-chrome - Chrome/Firefox 在通过 (Watir-)Webdriver 调用时不保留 cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16431007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com