V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
zhouhuab
V2EX  ›  程序员

现在 session 是主流还是 jwt + refresh token 是主流?

  •  1
     
  •   zhouhuab · 18 小时 0 分钟前 · 2179 次点击

    徘徊了好几年,看了好多文章,也问了 chatgpt ,现在想看看生产中用到都是啥?

    28 条回复    2026-04-05 03:50:33 +08:00
    crysislinux
        1
    crysislinux  
       17 小时 53 分钟前 via Android
    中大厂肯定是后端 session
    w568w
        2
    w568w  
       17 小时 14 分钟前
    我没搞懂这两种方案有什么区别吗? jwt + refresh token 不只是 session 的一种实现方式么。
    gitrebase
        3
    gitrebase  
       17 小时 7 分钟前
    refresh token 感觉更多用在开放平台 API 的认证/授权上,如果只是正常的用户登录流程,就用 session 就好,但感觉两者之间也没什么技术复杂度的差别,熟悉哪个用哪个就好
    bwijn
        4
    bwijn  
       17 小时 5 分钟前
    claude 是主流
    blushyes
        5
    blushyes  
       16 小时 50 分钟前
    @w568w 一个是有状态一个是无状态。
    diudiuu
        6
    diudiuu  
       16 小时 30 分钟前
    自己控制上 两个结合
    yungo8
        7
    yungo8  
       16 小时 24 分钟前 via Android   ❤️ 1
    这种最佳实践的只能大佬们回答了,说实话,有多少人是做过手机中那些常用 app 保持登录状态,最多也就是对接登录点一下。本人搞的登录,不好意思,就一个 token 走天下,没有 refresh token ,过期了麻烦用户再登录🐶
    way2explore2
        8
    way2explore2  
       15 小时 59 分钟前
    看需求了,APP 多 JWT + Fresh
    Web 多用 Session
    craftsmanship
        9
    craftsmanship  
       15 小时 59 分钟前 via Android
    @yungo8 保持登录状态这个 我觉得可以请 @Livid 来讲一下 V 站的设计作为参考
    w568w
        10
    w568w  
       15 小时 5 分钟前
    @blushyes 我理解现在很多 JWT 的实践其实是综合的,JWT 本身不会携带全部状态信息(可能只有个 id ),实际的鉴权和状态提取还是在服务端完成的。

    毕竟无状态就不可 revoke ,这个风险太大了
    liuxu
        11
    liuxu  
       15 小时 3 分钟前
    oauth2
    onedge
        12
    onedge  
       14 小时 59 分钟前
    @yungo8 简单粗暴
    onedge
        13
    onedge  
       14 小时 58 分钟前
    @way2explore2 web 现在也是 jwt+refresh
    poly1911
        14
    poly1911  
       14 小时 56 分钟前
    jwt
    jadeborner
        15
    jadeborner  
       14 小时 36 分钟前 via Android
    当然是 session,我经常把 cookie 导出到另一台机器用,省得再登陆一次
    streamrx
        16
    streamrx  
       14 小时 14 分钟前 via iPhone
    单个客户端种类就 session
    imnpc
        17
    imnpc  
       14 小时 6 分钟前
    前后端分离 JWT+ token 不分离 session
    fovecifer
        18
    fovecifer  
       12 小时 7 分钟前
    我觉得你把概念搞混了,我觉得应该是中心化的管理方案和去中心化的管理方案
    leegradyllljjjj
        19
    leegradyllljjjj  
       11 小时 56 分钟前
    两种都用了是什么水平
    Rache1
        20
    Rache1  
       11 小时 54 分钟前
    看过这么多任务机器人、代挂脚本之类的东西,就能看出来,第一方的话大厂们都还在用 Cookie 那一套,如无必要,勿增实体
    Bingchunmoli
        21
    Bingchunmoli  
       11 小时 53 分钟前
    混合 jwt+session 算什么, 还有看见很多大肠的 token 不是标准的 jwt 是用了自己私有算法还是什么 其他的,jwt 确实太长了
    ZeroDu
        22
    ZeroDu  
       11 小时 44 分钟前
    用最简单的方案,生成的 uuid 然后存到 redis
    netnr
        23
    netnr  
       11 小时 44 分钟前
    同时支持 Cookie 和 JWT
    zed1018
        24
    zed1018  
       11 小时 40 分钟前
    @w568w #10 JWT 设计思路本身也是不支持 revoke ,要 revoke 就得加黑名单,然后分布式服务各自要集中查询黑名单,那还不如一开始就不要用 JWT 。所以一般我理解的用 JWT 就不考虑 revoke ,而是把单个 token 时间给的足够短,然后 revoke refresh token 。
    Oktfolio
        25
    Oktfolio  
       11 小时 17 分钟前
    大厂都还是 cookie + 随机字符串( sessionid )
    giter
        26
    giter  
       11 小时 15 分钟前
    @Oktfolio 这么多年前就开发了的产品,使用 Cookie 或 Session 都正常。后面开发的项目基本都是双 Token 机制
    BadAngel
        27
    BadAngel  
       8 小时 46 分钟前
    今后不应该是 阅后即焚 吗
    way2explore2
        28
    way2explore2  
       4 小时 14 分钟前
    @zed1018 正解,
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3163 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:04 · PVG 08:04 · LAX 17:04 · JFK 20:04
    ♥ Do have faith in what you're doing.