前端禁止别人打开控制台调试自己的代码

为了防止非法的调试和修改,同时限制别人使用python爬虫,盗取自己网站的数据,我们需要在写一段代码来防止非法入侵调试,增加网站的安全性


(() => {function block() {if (window.outerHeight - window.innerHeight > 200 || window.outerWidth - window.innerWidth > 200) {document.body.innerHTML = "检测到非法调试,请关闭后刷新重试!";}setInterval(() => {(function () {return false;}['constructor']('debugger')['call']());}, 50);}try {block();} catch (err) { }
})();

原理:

使用无限 debugger,主要是通过不断 debugger 来疯狂输出断点,因为 debugger 在控制台被打开的时候就会执行,程序就会被断点,不能往下执行

  • 为了让自己写出来的代码更加的晦涩难懂,需要对上面的代码再优化一下
    将 Function(‘debugger’).call()改成 (function(){return false;})‘constructor’‘call’;
  • 并且添加条件,当窗口外部宽高和内部宽高的差值大于一定的值 ,我把 body 里的内容换成指定内容
  • 当然使用的时候,为了更加的安全,最好加密后再使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/70077.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ABAP FB05 清账函数:POSTING_INTERFACE_CLEARING

清账相关事物代码: FB05 相关函数:POSTING_INTERFACE_START POSTING_INTERFACE_CLEARING DATA: LT_BLNTAB TYPE STANDARD TABLE OF BLNTAB.DATA: LS_BLNTAB TYPE BLNTAB.DATA: LT_FTCLEAR TYPE STANDARD TABLE OF FTCLEAR.DATA: LS…

华纳云:linux服务器查看端口的办法

在Linux服务器上查看端口的状态和监听情况,您可以使用一些命令。以下是几种常用的方法: netstat命令: 使用netstat命令可以查看服务器上的端口情况。要查看所有活动连接和监听端口,可以运行以下命令: netstat -tuln …

Vue + Element UI 前端篇(八):管理应用状态

使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的,但是因为组件封装的原因,隐藏按钮在头部组件,而导航菜单在导航菜单组件,这样就涉及到了组件收缩状态的共享问题。收缩展开按钮触发收缩状态的修改…

postgresql 安装教程

postgresql 安装教程 本文以window 15版本为教程 文章目录 postgresql 安装教程1.下载地址2.以管理员身份运行3.选择安装路径,点击Next4.选择组件(默认都勾选),点击Next5.选择数据存储路径,点击Next6.设置超级用户的…

指针和字符数组笔试题及其解析(第三组)

个人主页:Lei宝啊 愿所有美好如期而遇 第三组笔试题 char *p "abcdef";printf("%d\n", sizeof(p)); printf("%d\n", sizeof(p1)); printf("%d\n", sizeof(*p)); printf("%d\n", sizeof(p[0])); printf("%…

Android逆向学习(四)app修改smali函数跳过弹窗广告,等待广告,更新提醒

Android逆向学习(四)app修改smali函数跳过弹窗广告,等待广告,更新提醒 一、写在前面 这是吾爱破解课程的第三个练习,我在写这篇博客时遇到了vscode插件bug,已经想办法联系原作者了,希望能够尽…

Android WIFI工具类 特别兼容Android12

直接上代码: package com.realtop.commonutils.utils;import android.annotation.SuppressLint; import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothManager; import android.bluetooth.BluetoothProfile; import android.content.Con…

Jmeter 三种提取方式 —— 关联实例

当请求之间有依赖关系,比如一个请求的入参是另一个请求返回的数据,这时候就需要用到关联处理 Jmeter中常用的关联方法: 正则表达式提取器、XPath提取器、JSON提取器​​​​​​ regex: (.*?)-(.*?)-(.*?)\n.: 匹配除换行符(…

C# 获取Json对象中指定属性的值

在C#中获取JSON对象中指定属性的值,可以使用Newtonsoft.JSON库的JObject类 using Newtonsoft.Json.Linq; using System; public class Program { public static void Main(string[] args) { string json "{ Name: John, age: 30, City: New York }"; …

python实现对excel表中的某列数据进行排序

如下需要对webCms中的B列数据进行升序排序,且不能影响到其他列、工作表中的数据和格式。 import pandas as pd import openpyxl from openpyxl.utils.dataframe import dataframe_to_rows# 读取 Excel 文件 file_path 1.xlsx sheet_name webCms# 读取 Excel 文件并…

pc-签字画板vue-esign的使用

使用的是vue-esign组件 npm install vue-esign 首先下载组件在main.js中引入vue-esign,并且挂载 import { createApp } from vue; import App from ./App.vue; const app createApp(App);import vueEsign from vue-esign app.use(vueEsign ) 页面使用&#xff0…

mysql场景题:最近7天连续3天登陆用户,字段,id,date(已去重)

1.最近7天连续3天登陆用户,字段,id,date(已去重) 思路: lag对时间开窗(注意时间得转换为时间戳(int类型才可以添加后续条件),跳行为2(连续3天&am…

uniapp移动端地图,点击气泡弹窗并实现精准定位

记录移动端地图map组件的使用 需求记录: 移动端地图部分需要展示两个定位点,上报点及人员定位点。通过右上角的两个按钮实现地图定位。点击对应定位气泡,弹出定位点的信息。 效果图如下: map在nvue中的使用。直接用nvue可以直接…

JavaScript闭包漏洞与修补措施

请先看下面一段代码 var obj (function () {var sonObj {a: 1,b: 2}return {get: function (v) {return sonObj[v]}}})()可以看出,这是一段很典型的js闭包代码,可以通过obj调用get方法传一个参数,如果传的是a就可以得到闭包内的对象sonObj.a var obj (function () {var sonO…

edge浏览器无法登录账号!Microsoft 帐户无法登录!

种种原因,将笔记本重置了,重新下载装了系统,但是麻烦也来了,Microsoft 帐户无法登录!edge浏览器无法登录账号,之前的保存的密码,加星的书签页同步不过去,这不完犊子了!干…

Redis7入门概述

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: Java从入门到精通 ✨特色专栏&#xf…

微信小程序引入地图

微信小程序引入地图 <map longitude"{{markers[0].longitude}}" scale"11" latitude"{{markers[0].latitude}}" markers"{{markers}}" style"width: 100%; height:81vh;"></map>1.可以直接在页面设置map标签显…

谈谈你的未来吧(励志成为CV算法工程师的第一天)

谈谈你的未来吧&#xff08;励志成为CV算法工程师的第一天&#xff09; 前言一、不知道该怎么选择的大一&#xff0c;大二二&#xff0c;好像知道未来路的大三三&#xff0c;谈谈博主我吧四&#xff0c;朝着一个方向前进吧 前言 仅以此篇记录我的学习经过&#xff0c;大家有什…

解决WebSocket通信:前端拿不到最后一条数据的问题

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

服务器上装conda

服务器从0搭建-【anaconda3cudacudnnconda环境创建修改conda源】_bashrc中的conda initialize和cuda_冲上云霄&#xff01;的博客-CSDN博客