是否有网站禁用广告拦截的 API 以及它们自己?

Is there an API for websites to disable ad block plus themselves?

提问人:Alex 提问时间:8/12/2023 更新时间:8/12/2023 访问量:190

问:

我正在使用 Chrome 115 中的 Ad Block Plus 扩展程序,从开发人员的角度来看,有些事情引起了我的注意。

在 https://satellites.pro/ 上,我得到了一个弹出窗口,可以禁用广告块以支持该网站,这很好。

我单击该按钮,广告拦截器直接被禁用(我不必导航到广告拦截器并手动禁用它)。

从技术角度来看,这是如何工作的?网站不能自动触发此功能并在不询问我的情况下禁用广告拦截器吗?这是在使用一些Ad Block Plus API吗?

第一次进入网站 - 备注:“Anzeigen zulassen”是德语,表示“接受广告”。

Popup to disable adds, ABP is on

点击按钮后 (1)

Website reloaded after clicking the button, ABP is off

Google-Chrome 网页 广告拦截

评论

2赞 Vivick 8/12/2023
哦,这听起来像是安全隐患
0赞 Alex 8/12/2023
我找到了这个:gitlab.com/eyeo/adblockplus/abc/webext-sdk/-/issues/171

答:

1赞 Alex 8/12/2023 #1

我在网站的 Javascript 代码中找到了这一点:

c.initCustomEvent("domain_allowlisting_request", !0, !0, b);

这让我想到了 https://gitlab.com/eyeo/adblockplus/abc/webext-sdk/-/merge_requests/298

所以,是的,似乎有一个 API 可以让网站自行解锁。

https://gitlab.com/eyeo/adblockplus/abc/webext-sdk/-/issues/171 中有更多的概念,看起来这应该只适用于“受信任的站点”。