Devtools防调试-js检测开发者是否开启防调试

发布于 2019-05-31  56 次阅读


当你用浏览器打开一个网站,一般情况下可以复制页面中一些文字信息的,但是会有个别网站禁止复制。当然了,这点小问题对程序员来说完全木有难度,浏览器view-source就可以获取网页各种资源。但是有些网站你会发现当你这样复制几次东西之后,你的账号会被封o(╯□╰)o那么,问题来了,这些网站是如何知道我们查看了网站源码的?

试着到网上找了一下这种原理,倒是找到了相关的代码,下面贴出来大家看看:

setInterval(function() {
    check()
}, 4000);
var check = function() {
    function doCheck(a) {
        if (("" + a / a)["length"] !== 1 || a % 20 === 0) {
            (function() {}
            ["constructor"]("debugger")())
        } else {
            (function() {}
            ["constructor"]("debugger")())
        }
        doCheck(++a)
    }
    try {
        doCheck(0)
    } catch (err) {}
};
check();

说实话,这段代码我是一脸懵逼,完全看不懂,不过不耽误使用就是了,毕竟谁也不想自己辛辛苦苦码的代码被人不知不觉偷走了。


非宅无以为乐