V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
scnace
V2EX  ›  问与答

BasicAuth in Chrome

  •  
  •   scnace · 2016-12-29 23:57:34 +08:00 · 3745 次点击
    这是一个创建于 2871 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天写代码的时候 由于“登录”功能不是必要的功能 而且符合 BasicAuth(基本认证)的应用场景 所以用BasicAuth来实现了这个验证用户功能。然而 奇怪的是 在 Chrome 里面测试的时候 第一次通过验证的用户 这之后都不用进行身份验证了。。然后 跑去 FF 测试了一下 是每次都需要认证的。再之后 为了确认 Chrome 下的具体情况 我删除了保存的密码,清除了页面缓存之后(虽然我觉得跟页面缓存没什么关系 但是我曾经迷信科学 233) refresh 还是不需要认证 但是 在隐身模式下 又是需要验证的。故不解 。

    Dependencies:

    Browser : Chrome 51.0.2704.84 (64-bit)
    OS: Linux mint Rosa

    Reference:

    来自 Chromium 的 issue

    7 条回复    2016-12-30 10:19:40 +08:00
    scnace
        1
    scnace  
    OP
       2016-12-30 00:25:54 +08:00
    果然不该深夜发帖咩?
    skydiver
        2
    skydiver  
       2016-12-30 00:38:47 +08:00 via iPad
    本来就会记住密码。。要不然多烦啊
    scnace
        3
    scnace  
    OP
       2016-12-30 01:21:02 +08:00 via Android
    @skydiver 那如果有人(管理员)在公用电脑上登陆了一遍 接下来大家就都可以登陆了 岂不是很危险😂
    lhbc
        4
    lhbc  
       2016-12-30 05:59:07 +08:00 via iPhone   ❤️ 1
    1. HTTP Basic Auth 的验证是由服务端完成的,跟浏览器没关系。
    2. 浏览器在完成 HTTP Basic Auth 后,在每个请求的 request header 里加上 base64 编码后的账号密码,服务端根据这个头部验证用户
    scnace
        5
    scnace  
    OP
       2016-12-30 09:52:23 +08:00 via Android
    @lhbc 嗯 这个我了解了 然后我的问题是 Chrome 在验证成功一次后 在服务端密钥不变的情况下 会默认使用上一次验证成功的 username 和 password, 跳过了输入的过程… 而在 Firefox 下则不会跳过。
    lhbc
        6
    lhbc  
       2016-12-30 10:04:39 +08:00 via iPhone   ❤️ 1
    @scnace 因为你没有重启 Chrome ,可能你选了关闭后在后台运行 Chrome
    scnace
        7
    scnace  
    OP
       2016-12-30 10:19:40 +08:00
    @lhbc 还真是 一直没注意。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   946 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 20:57 · PVG 04:57 · LAX 12:57 · JFK 15:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.