首页 > 解决方案 > 防止弹出窗口关闭时关闭开发人员工具窗口

问题描述

我正在尝试调试登录窗口。下面是这个过程:

  1. 用户访问站点 A
  2. 用户单击以使用作为 OAuth2 提供程序的站点 B 登录
  3. 站点 B 会打开一个弹出窗口,提示用户输入他们的凭据
  4. 登录完成后,站点 B 将重定向到站点 A 的指定页面。
  5. 站点 A 将关闭弹出窗口并使用从站点 B 获取的 OAuth2 连接数据让用户登录。

如果用户已经通过站点 B 登录,则弹出窗口将打开并通过相同的过程但“立即”关闭(意味着它直接跳转到重定向而不需要用户的凭据)。发生这种情况是因为站点 A 过去被用户预先授权通过站点 B 进行连接。

我们控制站点 B,但不控制站点 A。

现在我们试图诊断的这个过程存在问题,但我们遇到了困难。为此,我们试图在站点 B 弹出窗口中保持开发人员工具窗口打开。开发工具窗口会自动打开,因为我已经使用标志启动了 chrome,--auto-open-devtools-for-tabs但是当窗口关闭时,开发工具选项卡也会关闭,并且我丢失了在此过程中实际发生的所有信息。我的问题是是否可以在窗口关闭后保持 devtool 窗口打开。

这个问题类似于当前浏览器窗口关闭时如何防止 Chrome 开发者工具关闭?但它在以下方面有所不同:

我们不能为窗口卸载事件添加断点,因为加载和卸载会立即发生。我们需要的是即使在窗口关闭后也不会关闭开发工具的东西。

有没有办法让开发工具保持打开状态,或者至少在卸载时保存它的快照,而不必在窗口实际打开时这样做?我们记得的命令行标志或断点之类的东西?

编辑:我在保留网络选项卡日志方面取得了部分进展,方法--log-net-log=<filename>.json是将所有请求转储到文件中以供稍后检查。虽然这实际上并没有回答我的问题,但它在帮助方面大有帮助,而且如果它对其他人有用,它也很有用。

标签: google-chromegoogle-chrome-devtools

解决方案


推荐阅读