• 请不要在回答技术问题时复制粘贴 AI 生成的内容
darknoll
V2EX  ›  程序员

一个网站支持一个浏览器上多个用户同时登录,有人处理过这种需求吗?

  •  
  •   darknoll · Jan 25, 2021 · 5448 views
    This topic created in 2110 days ago, the information mentioned may be changed or developed.

    听到这个需求的时候我脑子是懵的,还没想过这个场景,实现起来麻烦吗?

    30 replies  •  2021-01-26 09:56:25 +08:00
    temporary
    temporary
    Jan 25, 2021 via iPhone❤️1
    1
    qq 邮箱好像可以
    kop1989
    kop1989
    Jan 25, 2021
    2
    意思是一个浏览器同时记录多个用户的登录状态?
    那么再次有人使用的时候他怎么知道应该自动登录哪个账户?难道拉出列表来选么?
    MIUIOS
    MIUIOS
    Jan 25, 2021
    3
    sessionStorage ?
    linauror
    linauror
    Jan 25, 2021❤️4
    4
    url 上带 token
    freemoon
    freemoon
    Jan 25, 2021
    5
    小问题, 先把原型画出来。
    CptDoraemon
    CptDoraemon
    Jan 25, 2021
    6
    google 不就这样的吗
    polyang
    polyang
    Jan 25, 2021
    7
    多个用户同时登录?那我请求的时候该带上哪个用户的 token ?
    sazima
    sazima
    Jan 25, 2021❤️1
    8
    正常需求, 不同路径不同的 token
    dfourc
    dfourc
    Jan 25, 2021
    9
    @sazima #8 这个思路可以
    codingguy
    codingguy
    Jan 25, 2021
    10
    @polyang #7 token 按 session 存就好了
    crab
    crab
    Jan 25, 2021
    11
    谷歌就是 /u/1 /u/2 这样
    bagheer
    bagheer
    Jan 25, 2021
    12
    理解成网页上增加个切换用户按钮
    smyle
    smyle
    Jan 25, 2021
    13
    google 就是可以同时登录 N 个账户啊,可以参考它怎么做的
    具体技术细节不懂,但作为普通用户,我可以观察到的是 url 里有一个字段对应当前用户 id,比如你登录了 10 个用户,从 chrome url 里你是可以区分出来的:
    https://drive.google.com/drive/u/5/
    这就表示是 id=5 的那个用户,当然这 id=5 显然是一个本地概念。不过你把这个链接贴到另一个只登录了一个 G 账户的浏览器里也能用,它会自动转为新浏览器中的那个唯一账户
    u6pM63mMZ34z32cE
    u6pM63mMZ34z32cE
    Jan 25, 2021
    14
    twitter 也可以
    coosir
    coosir
    Jan 25, 2021
    15
    QQ 邮箱也行呀
    x86
    x86
    Jan 25, 2021
    16
    Gmail 那种?
    markgor
    markgor
    Jan 25, 2021
    17
    如我没理解错,
    qq 邮箱和 googl 的不全是吧..
    他们都是记录登录了 A,B,C,D 。但是 active 的只有 1,如果要换号的话才切换,只是免密而已......
    xuanbg
    xuanbg
    Jan 25, 2021
    18
    用 token 的话,你不做限制天然就支持同时登录
    wozhizui
    wozhizui
    Jan 25, 2021
    19
    token 是好的解决方案
    每次验证带着 token 就行了
    myqoo
    myqoo
    Jan 25, 2021
    20
    cookie:

    session=s1,s2,s3
    action_session=s2 (or s1, s3, ...)
    fondD
    fondD
    Jan 25, 2021
    21
    能区分不就是能重复登陆吗
    myqoo
    myqoo
    Jan 25, 2021
    22
    cookie:

    session=s1,s2,s3
    active_session=s2 (or s1, s3, ...)
    clf
    clf
    Jan 25, 2021
    23
    token 如果是 jwt token 的话,往里面塞一个用户 id group 数组就行了
    3wdddd
    3wdddd
    Jan 25, 2021
    24
    localStorage 中存 token 用户组
    url 中存 active user
    wolfie
    wolfie
    Jan 25, 2021
    25
    sessionStorage + 1
    lovelive1024
    lovelive1024
    Jan 25, 2021
    26
    两个参数,一个存所有已经登录的用户,一个存当前选择的用户,请求的时候传对应的用户凭证就行了
    lululau
    lululau
    Jan 25, 2021
    27
    Firefox / Chrome 的多个 Profile 啊。。。代码改都不需要改。。。
    qq544230987
    qq544230987
    Jan 25, 2021
    28
    看来大家都没接触过 10 年前的 WAP 呢?
    那些年,我们用大砖块手机,用 wml 标记语言,不用 cookie 。

    那怎么判断用户是否登录呢?**在 url 后面加一个参数 sid**

    每次访问,都把 sid 和用户表中的 sid 字段进行对比~~~~ 相同就登录了,每次登录,都更新用户表里面的 sid 值。
    shenyuzhi
    shenyuzhi
    Jan 26, 2021 via iPhone
    29
    你把 token 当成客户端的标识不就行了
    Kinnice
    Kinnice
    Jan 26, 2021
    30
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1765 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 74ms · UTC 17:00 · PVG 01:00 · LAX 09:00 · JFK 12:00
    ♥ Do have faith in what you're doing.