NotionNext 这个项目有点恐怖啊,在文档页面按 f12 会卡死电脑,这是合理的防御手段吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
studyingss
V2EX    程序员

NotionNext 这个项目有点恐怖啊,在文档页面按 12 会卡死电脑,这是合理的防御手段吗

  •  
  •   studyingss 2024 年 10 月 13 日 4511 次点击
    这是一个创建于 541 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

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

    (我保证以后尊重知识成果再也不白嫖了)

    20 条回复    2024-10-14 16:18:55 +08:00
    xiri
        1
    xiri  
       2024 年 10 月 13 日   9
    “扫码关注微信公众号收验证码”,一般到这一步我就会跳过这个项目了,这种操作的目的根本不是人机检测,只是为了给公众号引流,最终通过广告等各种方式变现所谓的“私域流量”
    EchoWhale
        2
    EchoWhale  
       2024 年 10 月 13 日 via iPhone
    话说这些都是防君子不防小人
    hez2010
        3
    hez2010  
       2024 年 10 月 13 日   2
    其实这种做法没啥用,你如果无论如何都想要看的话,直接把 readmore.openwrite.cn/js/readmore-2.0.js 加到广告过滤列表里就行了
    drymonfidelia
        4
    drymonfidelia  
       2024 年 10 月 13 日
    我们公司网站如果检测到各类 dev tools (不仅 F12 还包括 webdriver 一类的)会往 cookies 插入风控标记,下个请求同步后账号就会被永久标记为风险账号,所有营销活动都无法参加
    欧美很多产商都有类似的设计
    liangdi
        5
    liangdi  
       2024 年 10 月 13 日
    @drymonfidelia 这个思路好
    liangdi
        6
    liangdi  
       2024 年 10 月 13 日
    不过题主,我教你一招,F12 -> Ctrl+Shift+P -> Disable Javascript -> 点击, 然后刷新页面
    drymonfidelia
        7
    drymonfidelia  
       2024 年 10 月 13 日
    @drymonfidelia #4 这种不用怕误杀,普通用户可不会在活动页打开 devtools 还知道怎么跳过断点之类的
    @liangdi #6 对 OP 这个网页可能有用,现在很多网站都是 js 渲染的,关闭 js 网页都打不开
    jhdxr
        8
    jhdxr  
       2024 年 10 月 13 日
    firefox 无影响,实测似乎能够检测出并且拦截这种行为

    控制台显示:
    短时间内对 Location 或 History API 的调用过于频繁。readmore-2.0.js:2:20750
    LuckyLauncher
        9
    LuckyLauncher  
       2024 年 10 月 13 日
    @drymonfidelia #7 普通用户只要在页面误触个 F12 就打开 devtool 了
    bigtear
        10
    bigtear  
       2024 年 10 月 13 日
    试了一下,污染了历史记录
    Kasine
        11
    Kasine  
       2024 年 10 月 13 日
    @drymonfidelia 学到了,用 F12 远离营销
    drymonfidelia
        12
    drymonfidelia  
       2024 年 10 月 13 日
    @LuckyLauncher 打开 devtool 后还要知道跳断点 这种一看就不是正常用户行为
    @Kasine 黑号后你买东西都比别人贵几倍,买促销的东西就自动砍单
    People11
        13
    People11  
       2024 年 10 月 13 日
    你可能需要 https://chromewebstore.google.com/detail/anti-anti-debug/mnmnmcmdkigakhlfkcdimghndnmomfeo
    当然这玩意也不是万能的,对部分正常网站也有副作用,但是对付题主给的网站那是没问题
    madtwilight
        14
    madtwilight  
       2024 年 10 月 13 日 via Android
    studyingss
        15
    studyingss  
    OP
       2024 年 10 月 13 日
    @jhdxr 奇怪,我用基于 firefox 的 floorp 也试了没检测出来

    @bigtear 我都没发现还有这个副作用

    @hez2010 厉害啊学到了

    @People11 6 啊还有这种东西,上 v2 真能学到东西

    @madtwilight 确实得换,其实就算是扫码我也能勉强接受,但文档有这种行为是真不敢用了
    lisxour
        16
    lisxour  
       2024 年 10 月 14 日
    @liangdi #6 不行的,现在的网页不是几十年前的那种了,复杂程度很高的,禁用 js ,我敢说至少 8 成的网站都打不开,或者功能严重失常(即使看起来只是简单的页面跳转,以前都是 a 标签,现在都是 js 路由跳转)。
    liangdi
        17
    liangdi  
       2024 年 10 月 14 日
    @lisxour 这个是个 静态网站生成器,详情页面本身就有完整的 html , 你测试一下就知道了
    studyingss
        18
    studyingss  
    OP
       2024 年 10 月 14 日
    @liangdi 禁用掉 js 内容是可以显示,但是旁边目录好像点不了了
    liangdi
        19
    liangdi  
       2024 年 10 月 14 日
    @studyingss 这个只是解决那个恶心的关注公众号的问题
    chenxuuu
        20
    chenxuuu  
       2024 年 10 月 14 日
    直接被火狐杀了,不会卡

    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     903 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 21:17 PVG 05:17 LAX 14:17 JFK 17:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86