V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
工单节点使用指南
• 请用平和的语言准确描述你所遇到的问题
• 厂商的技术支持和你一样也是有喜怒哀乐的普通人类,尊重是相互的
• 如果是关于 V2EX 本身的问题反馈,请使用 反馈 节点
wwjvtwoex
V2EX  ›  全球工单系统

微信网页版,在时间设置错误时,自动退出

  •  
  •   wwjvtwoex · 2018-12-24 08:46:21 +08:00 · 3395 次点击
    这是一个创建于 2153 天前的主题,其中的信息可能已经有所发展或是发生改变。
    无意中将系统的时区设置为 EST,比北京时间晚了 13 个小时,扫码登录网页版时闪退。
    这是 Bug 还是 Feature,是不是应该有个提示?
    13 条回复    2018-12-24 13:20:25 +08:00
    masker
        1
    masker  
       2018-12-24 09:01:48 +08:00 via Android
    没毛病。为什么要给提示。
    honeycomb
        2
    honeycomb  
       2018-12-24 09:09:14 +08:00 via Android   ❤️ 2
    按照浏览器的实践,它是可以不做提醒。
    如果时间不同(这里指本地和服务器的 UTC 时间不同),那浏览器无法和网站建立 HTTPS 连接,如果是启用了 HTTPS captive portal 探测功能的 Android 设备,也会出现无法连接网络的故障
    BOYPT
        3
    BOYPT  
       2018-12-24 10:20:25 +08:00   ❤️ 1
    如果是 HTTPS 握手的话,时区不同不会认为是时间差异的,如果是代码读取的 local 时间私有协议握手出错,那确实是 bug
    laoyur
        4
    laoyur  
       2018-12-24 10:22:10 +08:00   ❤️ 1
    @honeycomb 「如果时间不同(这里指本地和服务器的 UTC 时间不同),那浏览器无法和网站建立 HTTPS 连接」

    题主只是 13 个小时的偏差,不至于导致证书过期吧?「浏览器无法和网站建立 HTTPS 连接」这个说法具体指的是什么呢
    Vegetable
        5
    Vegetable  
       2018-12-24 10:32:08 +08:00   ❤️ 2
    Edge GMT -5 复现了问题,但是访问 HTTPS 并没有出现什么奇怪的问题,正常的.可能是微信某些签名算法用到了本地时间?
    wwjvtwoex
        6
    wwjvtwoex  
    OP
       2018-12-24 10:41:53 +08:00
    我的问题描述得不太清楚。应该是:当前是北京时间 --24 日 8:00,因为设置成 EST 时间 24 日 8:00 相当于北京时间 24 日 21:00
    honeycomb
        7
    honeycomb  
       2018-12-24 11:34:41 +08:00 via Android
    @laoyur 不是过期,而是客户端察觉到本地时间和网络对面的时间有差异(比如在 Android 上大约是超过三五分钟就可以出现)而拒绝建立连接。

    而微信的问题有可能是腾讯没有 catch 这个 exception,或故意如此设计。
    honeycomb
        8
    honeycomb  
       2018-12-24 11:35:44 +08:00 via Android
    @wwjvtwoex

    @Vegetable 的想法可能更准确
    laoyur
        9
    laoyur  
       2018-12-24 11:46:23 +08:00
    @honeycomb 依然无法理解。因为客户端时间不精确,就能导致 https 拒绝连接? Android 上不清楚,pc 和 iOS 都没有这种说法,至少在浏览器上。
    niboy
        10
    niboy  
       2018-12-24 11:54:48 +08:00
    或许是怕是机器人登录,加了时间限制
    likuku
        11
    likuku  
       2018-12-24 12:18:56 +08:00 via iPhone
    注意 #6 的描述,那么如此就是时间严重不对,当前的确很多软件和服务对 client 的时钟敏感的,客户你自己的锅,自己背吧。
    honeycomb
        12
    honeycomb  
       2018-12-24 13:08:36 +08:00 via Android
    @laoyur pc 上也有这种情况,比如 chrome。
    它这么做的里有可能是它认为 remote 端的时钟不对,因此拒绝信任
    laoyur
        13
    laoyur  
       2018-12-24 13:20:25 +08:00
    @honeycomb 亲测 Mac Chrome 默认设置,客户端时间不对的情况下,https 一切 ok,不知道你说的情况是如何复现的

    也许是我孤陋寡闻了,反正你说的机制(客户端时间不精确的情况下,https 拒绝连接)我是从来没听说过,也没经历过,当然,我指的是通常的情况,自有协议的情况除外(比如这里的微信、还有某 2ray 也要求客户端服务端时间不能有太大偏差)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3629 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 10:30 · PVG 18:30 · LAX 02:30 · JFK 05:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.