首页 > 解决方案 > Opera 中奇怪的 net::ERR_BLOCKED_BY_ADBLOCKER

问题描述

我希望这适合 Stackoverflow。

当我从 localhost 工作并“联系”到 Stripe JavaScript 库时,我收到此错误:

Failed to load resource: net::ERR_BLOCKED_BY_ADBLOCKER

我首先验证了 Opera 的 AdBlocker 和 Tracking cookie 拦截器已为 localhost 禁用。我什至启用和禁用了它们。我已经重新启动了 Opera,并且我已经重新启动了整个机器。我还确认我拥有最新版本的 Opera (v. 68)。

我测试了其他几个网站,也出现了同样的错误,但前提是 AdBlocker 处于活动状态。而且我 100% 确信 AdBlocker 已为 localhost 停用(我也没有混淆 localhost 或 127.0.0.1)。

我使用的是 Opera 的原生 AdBlocker,而不是第三方。

如果我在浏览器范围内禁用广告拦截(即从 Opera 的设置中),则不会导致此问题。

似乎 Opera 对 localhost 感到困惑,不是吗?

Chrome 中不会出现该问题。

谷歌关于这种错误类型的信息非常非常有限。

我必须,据我所知,没有其他软件可以阻止这些“广告”。

我的项目是用 Vue 编码的,并使用 NPM 在端口 5300 上运行。

它似乎并没有真正阻止 Stripe 想要执行的脚本,但是它们填满了我的控制台,给我带来了极大的不便。

有人知道吗?

标签: opera

解决方案


在设置 => 隐私保护 => 管理例外 => 屏蔽广告 => 例外

您是否尝试过使用此表单添加异常(一次添加一个):


127.0.0.1:5300
[*.]127.0.0.1:5300

另外,您使用的是什么操作系统?

您是否尝试过映射127.0.0.1:5300到某些内容,例如vuedev.local在您的hosts文件中并在地址栏中使用该名称?

只需在文件中添加一行hosts,例如:

# /etc/hosts IP -> host Mapping

127.0.0.1    localhost
127.0.0.1:5300    vuedev.local

如果上述方法没有帮助,您可以尝试vue-adblock-detect安装

npm i vue-adblock-detect

然后尝试添加类似:

<script>
import VueAdBlockDetect from 'vue-adblock-detect';
export default{
  mixins: [VueAdBlockDetect],
  beforeMount(){
    this.detectAdBlock().then((response)=>{
        if(response){
          // Pop-up an alert or something
        }else{
          // Do something else
        }
      })
  }
}
</script>

这至少应该让你进一步调查!


推荐阅读