Vue禁止打开控制台/前端禁止打开控制台方法/禁用F12/禁用右键

news/2024/11/9 5:35:48/

代码片段展示了如何在前端页面中禁用右键菜单、禁止文本选择、阻止特定键盘操作(如F12键打开开发者工具),以及通过检测窗口尺寸变化来尝试阻止用户调试页面。

 // 鼠标禁止右键禁止打开控制台及键盘禁用forbidden(){// 1.禁用右键菜单document.oncontextmenu = new Function("event.returnValue=false");// 2.禁用鼠标选中document.onselectstart = new Function("event.returnValue=false");document.onkeydown = () => {console.log(window.event.keyCode);if(window.event && window.event.keyCode == 123) {return false;}}},// 禁止别人调试前端页面代码‌,使用无限debugger‌pageTable(){/** 页面模块 */const block = () => {if (window.outerHeight - window.innerHeight > 200 || window.outerWidth - window.innerWidth > 200) {document.body.innerHTML = "检测到非法调试,请关闭后刷新重试!";document.body.style.display = 'flex'document.body.style.justifyContent = 'center'document.body.style.alignItems = 'center'}setInterval(() => {(function () {return false;}['constructor']('debugger')['call']());}, 50);}/** 禁止调试 */const banDebugging = () => {try {block();} catch (err) {console.log({ err })}}let threshold = 160 // 打开控制台的宽或高阈值window.setInterval(function() {if (window.outerWidth - window.innerWidth > threshold ||window.outerHeight - window.innerHeight > threshold) {// 如果打开控制台,则禁止banDebugging();}}, 1000)}
  • 认识到完全防止前端页面被调试是不可能的。即使是最复杂的反调试技术,经验丰富的开发者也能找到绕过的方法。

  • 专注于保护敏感数据和逻辑,而不是试图阻止调试。例如,通过服务器端验证和加密来保护敏感信息。


http://www.ppmy.cn/news/1545545.html

相关文章

Python与Excel交互:pandas库安装及基本用法

在之前的文章中,我们探讨了Python处理Excel文件的基本概念,如工作簿、工作表以及单元格等。现在我们将转向具体的工具介绍——pandas库,它是Python中最常用的数据分析库之一,能够非常便捷地读取、处理和写入Excel文件。 安装pand…

windows查看net网络监听端口命令和工具(ipconfig、netstat、tasklist、TCPView)

文章目录 使用命令提示符(CMD)查看网络连接和配置使用 netstat 命令查看监听端口查看特定的端口查看TCP监听端口tasklist查看对应进程ID的程序Get-NetTCPConnection 命令使用 TCPView工具使用命令提示符(CMD) 查看网络连接和配置 ipconfig :显示所有网络 适配器的当前 TC…

躺平成长-利用kimi智能编辑助手开发小程序第(10)天

开源竞争: 当你无法彻底掌握一个技术的时候,你就开源这个技术,培养出更多的技术依赖,让更多的人了解这个技术,帮助你完善你的技术,那么这不就是在砸罐子吗?一个行业里面总会有人砸罐子的&#x…

HTB:Perfection[WriteUP]

目录 连接至HTB服务器并启动靶机 1.What version of OpenSSH is running? 使用nmap对靶机TCP端口进行开放扫描 2.What programming language is the web application written in? 使用浏览器访问靶机80端口页面,并通过Wappalyzer查看页面脚本语言 3.Which e…

算法每日练 -- 双指针篇(持续更新中)

介绍: 常见的双指针有两种形式,一种是对撞指针(左右指针),一种是快慢指针(前后指针)。需要注意这里的双指针不是 int* 之类的类型指针,而是使用数组下标模拟地址来进行遍历的方式。 …

软考系统架构设计师论文:论面向对象的建模及应用

试题三 论面向对象的建模及应用 软件系统建模是软件开发中的重要环节,通过构建软件系统模型可以帮助系统开发人员理解系统、抽取业务过程和管理系统的复杂性,也可以方便各类人员之间的交流。软件系统建模是在系统需求分析和系统实现之间架起的一座桥梁,系统开发人员按照软件…

再谈 TCP 连接的源端口选择

TCP 源端口的选择有两个场景: 主机场景SNAT 场景 先看主机场景,其中又区分了两类互斥的场景: bind 时选端口:如果 bind 的端口被某条 established 连接使用,则无法 bind;connect 时选端口:如…

将一个二维矩阵,螺旋遍历展开为一维列表

matrix [[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]# 获取二维列表的行数并存放到变量 rows 中 # 获取二维列表的列数并存放到变量 cols 中 rows len(matrix) cols len(matrix[0])left 0 right cols - 1 top 0 bottom rows - 1result []while left < right and to…