Chrome插件fetch被CORB拦截

背景

近日写了一个Chrome插件,该插件会对第三方页面进行修改,为了完成其功能,该插件需要向服务器发送请求:

const BASE_URL = 'https://some-domain.com'
const res = await fetch(`${BASE_URL}${link}`)
const result = await res.json()
// ...

其中,所请求的服务器的源(Origin)异于该插件所欲修改的第三方网站的源,且第三方网站与服务器均使用HTTPS连接。

出现的问题

上述发送请求的代码在Chrome 72.x版本中可以正常使用,而在Chrome更新到73.x及以上版本后,上述代码发送的请求将会被Chrome拦截:

控制台拦截提示

Cross-Origin Read Blocking (CORB) blocked cross-origin response https://some-domain.com/some-... with MIME type application/json. See https://www.chromestatus.com/... for more details.

注:使用XHR发送请求同样会被拦截。

在能找到的Chromium官方的唯一一篇相关文章中(参考文献1),没有提到如何避免此种请求被拦截,仅有一个提交bug的链接。

请问所述问题应如何解决?

参考文献

  1. Cross-Origin Read Blocking for Web Developers
阅读 6.3k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题