最近,我意识到,一些adblocker扩展(例如adBlocker plus)会阻止一些Ajax调用。我在控制台上收到该错误:

GET http://localhost/prj/conn.php?q=users/list/ net::ERR_BLOCKED_BY_CLIENT 


为什么它阻止了一些Ajax调用,但没有阻止其他Ajax调用,是什么原因导致的呢?除了告诉用户关闭adblocker之外,还有其他解决方法吗?

评论

我可能无法与Google chrome一起加载资源net :: ERR_BLOCKED_BY_CLIENT

我写了一篇博客文章和视频,应该可以阐明这个问题。 love2dev.com/blog / ...

这工作了。右键单击Chrome中的AbBlock插件(右上角),然后单击“在所有站点上暂停”

有一个非假设的答案将是很棒的。我没有使用任何广告拦截器,但似乎找不到合适的方法来调试它。为什么浏览器无法识别块的来源超出了我的范围。

#1 楼

AdBlocker通常具有一些规则,即它们将URI与某种类型的表达式相匹配(有时它们也与DOM与表达式相匹配,在这种情况下并不重要)。

具有仅可操作的规则和表达式一小段文字(URI)容易产生误报...

除了指示用户禁用扩展名(至少在您的网站上),您还可以获取扩展名并测试哪个规则/表达式阻止了您的工作,前提是该扩展程序提供了足够的详细信息。一旦确定了罪魁祸首,您可以尝试通过使用不同的URI来避免触发规则,向创建它的团队报告该规则不正确或过于宽泛,或者两者都进行。
检查文档是否有特定添加

例如,AdBlock Plus具有“可阻止项目”视图,该视图显示页面上所有被阻止的项目以及触发该阻止的规则。这些项目还包括XHR请求。



评论


我们最终不得不更改api,但我们解决了。非常感谢您的提示...

–s.alem
2014年6月27日13:14

啊!我只是花了30分钟或更长时间来排查其他问题-就是这样! :(

–威尔·斯特罗尔
2014年12月5日在2:49

同样在这里。我一直在更改代码,寻找导致此问题的原因,结果是我的AdBlock只是阻止了我正在处理的呼叫:D

–安德烈(Andrei)
15年4月14日在15:41

经过半天的搜索,为什么删除和获取不起作用,发现了这个...真是有趣,我们甚至都没有生气:))

– Bokkie
15年7月3日在13:52

您可以通过按Ctrl + Shift + V在安装了Adblock Plus插件的Firefox中启用此视图。我没有设法在Chrome中打开它,但是默认情况下,两个浏览器中的过滤器列表相同,因此可以做到这一点,帮助mi查找导致AdBlock做出反应的部分网址。

–马克
16年4月11日在11:54

#2 楼

如果您的URL包含诸如“ advert”,“ ad”,“ doubleclick”,“ click”之类的词或类似的词...

例如:


GET googleads.g.doubleclick.net/pagead/id
static.doubleclick.net/instream/ad_status.js

...然后,广告拦截器将对其进行拦截。

评论


大。我有一个管理页面;)

– Servus7
15年10月23日在9:07

以我为例,问题是有一个名为“ ads”的文件夹,其中包含网站上显示的图片。我只是将文件夹更改为“发布”,此问题已解决。

–法兰西斯科·德拉·富恩特
16年8月3日在15:36

我已禁用页面的广告拦截器,但仍然收到相同的错误

–马丹·班达里(Madan Bhandari)
16年11月16日在12:50

据我了解,使用嵌入式YouTube影片等Google产品时会创建ad_status.js。那么,即使有此文件,也有可能避免adBlock?

–尼古拉斯
17年4月27日在15:14

等待,什么,为什么adblocker阻止这些URL?

–巴拉德
18年4月30日在8:03

#3 楼

我发现如果文件名中包含300,则AdBlock会阻止该页面并引发ERR_BLOCKED_BY_CLIENT错误。

评论


我已经确认了这一点,并通过unsplash.com通知了团队

–托尼·奥哈根(Tony O'Hagan)
20年6月17日在22:30

#4 楼

将PrivacyBadger添加到潜在原因列表中

评论


我只是遇到一个问题,PrivacyBadger阻止了某事。我认为原因是内容位于“测试”子域上。即test.example.com,但我不确定这是原因。

–krick
16年8月19日在15:42

#5 楼

我发现一种情况是,如果您的网址中包含关键字横幅,它也会被屏蔽。

#6 楼

正如此处已说明的那样,除了执行广告或脚本阻止的多个扩展程序之外,您可能还知道,这可能是由以下文件名引起的:

特别是在AdBlock Plus中,字符串“ -300x600”正在导致无法加载资源
ERR_BLOCKED_BY_CLIENT问题。

如图所示,由于其名称中的“ -300x600”模式(即特定的文本模式),某些图像被阻止了匹配AdBlock Plus中的表达式列表模式。


#7 楼

以我为例,它是Avira的Chrome扩展程序和Firefox附加程序,称为“ Avira Browser Safety”。我在版本1.7.4时遇到问题。
在我的特定情况下,我想登录一个名为gliffy.com的网站来制作图表,但是登录后我得到了一个空白页。如果您在Chrome中使用F12(控制台),则可以看到所有这些ERR_BLOCKED_BY_CLIENT(和其他)错误。

#8 楼

Opera Blocker和其他检查网络中的所有文件/ URL。然后与列表进行比较。它是EasyPrivacy和EasyList。如果您的文件/ URL在此,则将被禁止。祝你好运。

所以...我找到了所有addBlockers的过滤器列表!