[-GC-] 有人在关切 manifest V3 吗

楼主: danny0838 (道可道非常道)   2021-01-21 23:31:19
所谓 Manifest V3 就是新版的扩充功能规格,
Manifest V3 上线以后可能有一天会停止支援 Manifest V2,
届时旧的扩充功能都必须改写为 Manifest V3 规格才能使用。
BUT...程序猿生最麻烦的就是这个 BUT...
不是所有 Manifest V2 支援的功能都保证能在 Manifest V3 继续使用...
Chromium 88 版开始提供 Manifest V3:
https://developers.google.com/web/updates/2021/01/nic88
目前没设定停止支援 Manifest V2 的明确日期,
有资讯说可能在 Manifest V3 正式推出的一年内:
http://bit.ly/2LRtTVe
官方 Manifest V3 规格资讯:
https://developer.chrome.com/docs/extensions/mv3/intro/mv3-migration/
此页提到的几个重点改变:
1. 拿掉 background page,改用 service worker
service worker 虽然和 background script 差不多,
但有个问题是 service worker 没有 window、document 相关的 API,
如果套件要在背景计算 DOM 资讯可能会需要改写成复杂的 message passing...
2. 拿掉 blocking webRequest API,改用 declarativeNetRequest API
declarativeNetRequest 提供一套定义是否放行 web request 的规则集,
但是有规则上限等限制,不如以往的 blocking webRequest API 自由。
declarativeNetRequest API:
http://bit.ly/39V0dP8
社群回馈和各种功能缺陷的抱怨:
http://bit.ly/3a0FGse
一个很大的影响是 uBlock Origin 之类的广告封锁套件可能死掉或半残。
官方目前说强制安装的套件仍允许使用 blocking webRequest API。
强制安装需要更动系统设定(需要管理员权限),写入要强制安装的套件 ID,
然后系统上所有使用者 Chrome 中的所有帐号都会强制从商店安装指定的套件,
无法移除或停用。
设定方式可参见:http://bit.ly/3oba1to
强制安装会衍生出不少麻烦,除了需要管理员权限和所有使用者都受影响以外,
开发测试也会变得极为麻烦,因为不能直接加载测试套件,
一定要先在 Chrome 商店上架才能强制安装,
问题是测试中的套件谁有那个美国时间去写那些上架要求的隐私权原则等等啊XD
3. manifest CSP 对 script-src, object-src, worker-src directives 限制更严
这几个值以后只能使用 self, none 和 localhost
一个很大的影响是套件不再能用类似
<script src="http://example.com/myscript.js">
之类的方式加载远端脚本,
所有程式码都必须直接写在套件里,
或是改把程式放在远端服务器执行。
套件也无法加载远端的交互式 SVG、Java applet、Flash 等元件。
4. 禁止 chrome.tabs.executeScript 参数用“code”执行程式码文字
此外,content script 也禁止执行 eval 类函数(Manifest V2 可以)
补充一下,content script 在 DOM 插入 script 元素时,
script 似乎是视为在 content script(而不是 page script)执行
所以在 content script 执行类似以下脚本的方式也是不通:
var s = document.createElement('script');
s.innerText = "alert('test');";
document.body.appendChild(s);
看起来就是封死一切在 content script 执行任意自订脚本的可能性。
一个很大的影响是 XXXMonkey 之类的套件可能会因此死掉...
其他细节就有待各位先进一起研究研究了,
看看 Chromium 还值不值得开发者努力......
作者: zhtw (人生就是不停的后悔。。)   2021-01-21 23:49:00
哪次不是玩家乖乖吞下去XDD
作者: Altair ( )   2021-01-22 11:56:00
难怪有ext.在88版就当掉
作者: aza0290 (阿兹)   2021-01-22 12:17:00
安全性这种东西根本永无止境 再怎么改都会有安全漏洞
作者: choosin (秋心)   2021-01-22 15:23:00
安全性本来就这样 除非不跟外界互动 不然永远得奋斗...
作者: Kenqr (function(){})()   2021-01-22 23:51:00
挡广告和油猴都死去了吗...
作者: Rplus (R+) (9527)   2021-01-23 00:12:00
~
作者: GrandPrix (得窥堂奥,心中无憾)   2021-01-23 02:03:00
我只希望pttchrome届时还能使用...
作者: Rplus (R+) (9527)   2021-01-23 04:24:00
油猴子不能死!!!
作者: Toge (To Valhalla!)   2021-01-23 12:29:00
我很好奇不开放外连script的话挡广告要怎么挡XD然后Google的CDN和tracker也废了吧?
作者: LastAttack (与我无关~~)   2021-01-23 18:09:00
我只关心edge从chrome商店载扩充 相容机率484降低了?
作者: BDrip (蓝光~)   2021-01-24 19:03:00
版本追很勤 改v3 大概双方差没多久 大概也没逃离潮..
作者: alchemy123 (水果软索粉)   2021-01-26 23:08:00
广告商挡死adblock不意外
作者: andy199113 (Andy)   2021-01-27 07:54:00
谷狗的阴谋 可恶
作者: aq981334 (2025年未来人)   2021-02-01 13:03:00
油猴挂了 我怎么上网都不晓得了挡广告倒是不太重要的东西,只是看着碍眼,不影响上网。油猴挂了比较重要,毕竟很多东西都要搭配油猴使用

Links booklink

Contact Us: admin [ a t ] ucptt.com