dadazhang
V2EX  ›  问与答

js 怎么判断浏览器无痕模式

  •  
  •   dadazhang · Jul 3, 2019 · 7508 views
    This topic created in 2685 days ago, the information mentioned may be changed or developed.

    请问在 js 中怎么判断手机浏览器是否开启了无痕模式、隐私模式

    21 replies  •  2019-07-04 17:02:38 +08:00
    whypool
    whypool
    Jul 3, 2019❤️5
    1
    window.confirm('就是问一下是不是隐私模式?')
    Jirajine
    Jirajine
    Jul 3, 2019 via Android❤️14
    2
    有这个需求的我感觉都没好事。
    robinlovemaggie
    robinlovemaggie
    Jul 3, 2019
    3
    自己写一个浏览器给用户用, 他干什么都可以知道。
    wolfie
    wolfie
    Jul 3, 2019
    4
    看到 PC 端判断代码,好奇应用场景。
    7654
    7654
    Jul 3, 2019
    5
    浏览器出个隐私模式容易吗
    azh7138m
    azh7138m
    Jul 3, 2019❤️1
    7
    Mozilla 在 2017 年的收入为 5.62 亿美元,我们都算做 Firefox 的,Firefox 的市场占有率在 8%左右,那么整个市场规模大概 70 刀,按估值是 20 倍营收来算,考虑到 “资本家为了 300%的利润率可以冒上断头台的危险”,只要 70 * 20 * 3 亿刀,买这些浏览器都买下,就可以让全世界的浏览器给自己提供私有 api 啦。
    dadazhang
    dadazhang
    OP
    Jul 3, 2019
    9
    @RoshanWu
    @Tonni
    感谢回复
    mumbler
    mumbler
    Jul 3, 2019
    10
    @azh7138m 那以后谁做个浏览器,就可以敲诈大佬钱了
    azh7138m
    azh7138m
    Jul 3, 2019
    11
    @mumbler 按照市场占有率算得,自己做浏览器没有占有率的


    没看懂楼主在感谢什么,那些检测写的又不对。
    cjc2017
    cjc2017
    Jul 3, 2019
    12
    无痕情况下 windwo.localStorage 还是 sessionStorage 会抛出错误 可以尝试以此为判断条件
    cjc2017
    cjc2017
    Jul 3, 2019
    13
    原来上面已经有大佬 po 出代码 打扰了
    mugglezzz
    mugglezzz
    Jul 3, 2019❤️1
    14
    @azh7138m #11 我看懂了,大概楼主在感谢他认为对他有用的回复,或者说认真对他的问题回复的人;而其他说话阴阳怪气文不对题的人就不用感谢啦
    azh7138m
    azh7138m
    Jul 3, 2019
    15
    @mugglezzz

    上面贴出的代码,仅在部分版本的浏览器会报错,实际上并没有用(指 并不能用作 生产)。他们(指 https://www.v2ex.com/t/579610#r_7570232 https://www.v2ex.com/t/579610#r_7570379 )贴出的代码,我看过了,也测试过了。
    同样,我认为最靠谱的方式就是收购浏览器。
    这个说法是有来源的,chrome 哪怕在隐身模式下也会发送设备 id 给 Google,这个设备 id 在访问 Google 的网站时会携带。
    phpcyy
    phpcyy
    Jul 3, 2019
    16
    @cjc2017 我在 chrome 下试过了,localStorage 和 sessionStorage 可以用啊
    mywaiting
    mywaiting
    Jul 4, 2019
    19
    楼上说收购浏览器的,真会抖机灵

    以 chrome 为例,如果你有仔细 debug 过常规模式和无痕模式的区别,我想你一定能想出很多方法来区分是否运行在无痕模式下

    碍于利益相关,不想明白说,楼主可以自己仔细对比 常规模式的浏览器和无痕模式的浏览器到底有哪些区别,可以列出一个很长很长的列表的,把这个列表每一项想想有什么 hack 的方法,就能找到一堆区分两者的实现了,即使是近似的方式,那对于无痕模式也有极高(超过九成)的识别率,特定浏览器和方法能百分百确定
    s4nd
    s4nd
    Jul 4, 2019 via Android
    20
    我看到过一个这种代码,待会找找
    cjc2017
    cjc2017
    Jul 4, 2019
    21
    @phpcyy 我当时的场景是用户开启了无痕模式导致存储信息操作失败并且报错 挺久以前的事情 估计浏览器更新迭代把这个报错取消了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4427 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 88ms · UTC 02:25 · PVG 10:25 · LAX 18:25 · JFK 21:25
    ♥ Do have faith in what you're doing.