cross-request遇到的问题
最近在使用cross-request插件会收到一些报错信息:
Manifest version 2 is deprecated, and support will be removed in 2023. See https://developer.chrome.com/blog/mv2-transition/ for more details.
以上信息是说Google推出了Manifest version 3的版本,Google认为Manifest V3 比其前身更安全、更高效、更能保护隐私。它是扩展平台的演变,同时考虑了不断变化的网络环境和浏览器扩展的未来。Manifest version 2的版本将会 被淘汰,淘汰的关键时间点如下:
- 2022 年 1 月 17 日:Chrome 网上应用店将不再接受新的 Manifest V2 扩展。开发人员仍可以推送对现有 Manifest V2 扩展的更新,但不能提交新的 Manifest V2 项目。
- 2023 年 1 月:Chrome 浏览器将不再运行 Manifest V2 扩展。开发人员可能不再将更新推送到现有的 Manifest V2 扩展。
也就是说到2023年1月份,cross-request插件可能就不能正常运行了,目前cross-request插件还没人维护,无法升级到Manifest version 3的版本。
问题原因
对于Manifest version 3插件,Chrome使用declarativeNetRequest API替代了webRequest API。
在Manifest version 2中,cross-request使用chrome.webRequest
相关的API来拦截和修改web请求;
在Manifest version 3中,需要使用chrome.declarativeNetRequest
API来重新实现。
Manifest version 3对功能上的一些限制:
- Chrome浏览器根据配置好的规则来阻止和修改网络请求。
- 扩展程序无法读取和修改请求的实际内容。
- 如果需要 重定向或修改请求头 ,需要申请相应的
host_permissions
权限。
这些功能限制可能也会影响cross-request插件的正常运行。
暂时的解决方案
Mozilla说会在Firefox 中保留 WebRequest API,可以使用Firefox浏览器安装cross-request插件来使用。不过需要安装Firefox浏览器。
在 Manifest V3 中,Google 使用 declarativeNetRequest API 取代了 WebRequest API。这一变化使得这类扩展会面临毫无用武之地的尴尬处境。因此 Mozilla 将在 Firefox 中保留 WebRequest API,以确保扩展在提供它们所设计的功能方面不受限制。Mozilla 同样也会实施 declarativeNetRequest API,并在后续版本中继续扩展对 MV3 的兼容性。
安装步骤
- 自行下载安装Firefox浏览器。
- 在公众号
咻咻ing
后台回复cross-request
获取 插件安装包。 - 在Firefox设置中使用文件安装附加 组件的 方式安装扩展。
- 如果遇到什么问题,在后台留言交流吧!