前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >YApi的跨域插件cross-request不能用了,解决方案看这里

YApi的跨域插件cross-request不能用了,解决方案看这里

原创
作者头像
公号:咻咻ing
发布2022-12-07 17:58:28
9.8K0
发布2022-12-07 17:58:28
举报
文章被收录于专栏:公众号:咻咻ing

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.declarativeNetRequestAPI来重新实现。

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 的兼容性。

安装步骤
  1. 自行下载安装Firefox浏览器。
  2. 在公众号咻咻ing后台回复cross-request获取 插件安装包。
  3. 在Firefox设置中使用文件安装附加 组件的 方式安装扩展。
  1. 如果遇到什么问题,在后台留言交流吧!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • cross-request遇到的问题
  • 问题原因
  • 暂时的解决方案
    • 安装步骤
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档