这个项目的详细配置文档需要做一个“人机检测”,就是扫码关注微信公众号收验证码。

像这篇 https://docs.tangly1024[.]com/article/notion-next-themes

当时懒得拿手机扫码了,就想按下 f12 看看有没有办法直接看。(我承认这里是我不对,主要是它会先加载全文再隐藏后半截,所以我想偷个懒……结果被教训了)

打开 f12 之后会跳出 debugger ,点了两次运行之后鼠标就开始闪,挪动卡卡的,开始还没反应过来,以为是后台有啥程序开始跑,按开任务管理器发现 chrome 在疯狂吃内存和 cpu ,整个 chrome 都没法操作,单个 tab 也卡得关不掉,最后在任务管理器里杀了整个 chrome ,还好现在的 web 编辑器基本都有云草稿没造成什么损失。

后来试了下,逻辑应该是这样:检测到 f12 之后会触发两个断点作为警告,如果不听劝点两次继续,就会开始吃 cpu 和内存卡住浏览器来达到阻止调试的目的。

想请教一下这是前端禁止 f12 的通用做法吗?这种防御手段合理吗?

(我保证以后尊重知识成果再也不白嫖了)
举报· 250 次点击
登录 注册 站外分享
14 条回复  
xiri 小成 2024-10-13 15:24:18
“扫码关注微信公众号收验证码”,一般到这一步我就会跳过这个项目了,这种操作的目的根本不是人机检测,只是为了给公众号引流,最终通过广告等各种方式变现所谓的“私域流量”
EchoWhale 小成 2024-10-13 15:24:40
话说这些都是防君子不防小人
hez2010 小成 2024-10-13 15:29:52
其实这种做法没啥用,你如果无论如何都想要看的话,直接把 readmore.openwrite.cn/js/readmore-2.0.js 加到广告过滤列表里就行了
drymonfidelia 小成 2024-10-13 15:51:37
我们公司网站如果检测到各类 dev tools (不仅 F12 还包括 webdriver 一类的)会往 cookies 插入风控标记,下个请求同步后账号就会被永久标记为风险账号,所有营销活动都无法参加
欧美很多产商都有类似的设计
liangdi 小成 2024-10-13 16:13:57
@drymonfidelia 这个思路好
jhdxr 小成 2024-10-13 16:38:34
firefox 无影响,实测似乎能够检测出并且拦截这种行为

控制台显示:
短时间内对 Location 或 History API 的调用过于频繁。readmore-2.0.js:2:20750
LuckyLauncher 小成 2024-10-13 17:26:12
@drymonfidelia #7 普通用户只要在页面误触个 F12 就打开 devtool 了
bigtear 小成 2024-10-13 17:36:39
试了一下,污染了历史记录
Kasine 小成 2024-10-13 17:42:31
@drymonfidelia 学到了,用 F12 远离营销
12下一页
返回顶部