【发布时间】:2020-05-07 00:50:52
【问题描述】:
我正在尝试检测用户是否在其浏览器中使用了某种扩展程序,这可能会阻止我的网站正常运行,如果是,则为用户显示一条消息。
我正在使用名为 uMatrix 的扩展程序进行测试,但还有其他人采用类似的方法。
我的问题是,这种扩展会阻止我的 HTTP 请求,但不会返回正确的状态代码(如 403、404、500 等)。相反,当我 catch 我的请求时,我只是得到一个
错误:网络错误
在[我的文件名和行号]
在 XMLHttpRequest.handleError (xhr.js:83)
我相信在其他情况下也会引发同样的错误,比如缺乏互联网连接,所以我不能假设这个Network Error 意味着用户有一个“HTTP 请求阻止程序”。
我阅读了很多关于在 this thread 和其他地方识别 AdsBlocker 的内容,但我认为这不适用于我的问题。
关于如何识别用户正在阻止我的 HTTP 请求的任何想法? (有意或通过浏览器扩展)
【问题讨论】:
标签: javascript xmlhttprequest http-status-codes