在运行测试时放宽 Chrome 的 CSP (webdriver) (Content-Security-policy)

我正在尝试在使用 proctractor(webdriver、chromedriver)运行测试时放松 Chrome 的 CSP.

I'm trying to relax Chrome's CSP while running a test using proctractor (webdriver, chromedriver).

所以解决方案可以是

  1. 根据我的搜索结果,类似--disable-csp"的标志不存在.
  2. webdriver/protractor 的设置.

我找不到任何解决方案,只能设置一个过滤标头的代理.

I could not find any solution but to setup a proxy that filters the header.

有什么想法吗?

推荐答案

目前没有原生选项,但您可以使用扩展禁用 CSP.

currently there are no native option but you can disable CSP using extension.

步骤:

  1. 下载扩展禁用内容安全策略
  2. 将其保存为.zip,因为它需要修改以在启动时启用禁用CSP"
  3. 解压文件或使用Winrar双击文件background.js编辑
  4. var isCSPDisabled = false; 更改为 true
  5. 保存更改.
  1. Download extension Disable Content-Security-Policy
  2. Save it as .zip, because it need modification to enable "disable CSP" at start
  3. extract the file or if using Winrar double click file background.js to edit
  4. change var isCSPDisabled = false; to true
  5. save change.

代码

chrome_options = Options()
chrome_options.add_extension('path/to/disableCSP.zip') # or disableCSP.xpi
driver = webdriver.Chrome(chrome_options=chrome_options)

相关文章