Chrome插件fetch被CORB拦截

发布于 2022-09-11 18:36:18 字数 1286 浏览 10 评论 0

背景

近日写了一个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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

酷遇一生 2022-09-18 18:36:18

这篇文档不知你看过没有,应该会有帮助。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文