猿问

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


慕码人2483693
浏览 440回答 1
1回答

隔江千里

这篇文档不知你看过没有,应该会有帮助。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答