V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ak47007
V2EX  ›  Java

Java 登录

  •  
  •   ak47007 · 2019-07-05 16:24:46 +08:00 · 3344 次点击
    这是一个创建于 1953 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问怎么用 Redis 实现跟 session 一样的功能,比如说在谷歌浏览器登录成功后,换到火狐就要重新登录了。

    pws22
        1
    pws22  
       2019-07-05 16:37:30 +08:00   ❤️ 1
    完了,我没看懂你所说的意思
    x7395759
        2
    x7395759  
       2019-07-05 16:38:00 +08:00
    跨浏览器登陆?
    auto
        3
    auto  
       2019-07-05 16:40:15 +08:00
    ip ?
    allanzhuo
        4
    allanzhuo  
       2019-07-05 16:45:44 +08:00 via Android
    第一次看到这种需求
    Outliver0
        6
    Outliver0  
       2019-07-05 16:59:46 +08:00
    可以让谷歌,火狐,微软共享数据,实现跨浏览器自动登陆 (:
    lululau
        7
    lululau  
       2019-07-05 17:01:20 +08:00
    LZ 问的应该是如何把 session 储存在 Redis 中吧,搜“ Spring Session ”
    Canon1014
        8
    Canon1014  
       2019-07-05 17:02:16 +08:00
    java 还没学到
    Canon1014
        9
    Canon1014  
       2019-07-05 17:02:31 +08:00
    @Canon1014 #8 php 中可以将 session 改为 redis 驱动
    Canon1014
        10
    Canon1014  
       2019-07-05 17:02:52 +08:00
    @Canon1014 #9 应该都差不多
    codingKingKong
        11
    codingKingKong  
       2019-07-05 17:07:15 +08:00
    取一下 user-agent, 和 userId 共同生成 token 试试?
    airfling
        12
    airfling  
       2019-07-05 17:18:46 +08:00
    如果出现一个只有 ie 浏览器的 bug,可以让黑客拿到你的数据为所欲为,那么你的 跨浏览器的登陆是不是就有危险
    brucewuio
        13
    brucewuio  
       2019-07-05 17:40:20 +08:00
    跨浏览器 无解
    lastpass
        14
    lastpass  
       2019-07-05 17:49:41 +08:00 via Android
    不考虑任何安全性可解。
    比如,你后台记录客户端的 ip,将 ip 和用户唯一标识相,在一定时限内,ip 相同登录直接跳转。
    zjsxwc
        15
    zjsxwc  
       2019-07-05 17:50:47 +08:00 via Android
    楼主是新手吗,
    从 http 请求 header 里拿 token,
    一般在 cookie 字段里,
    然后这个 token 作为 redis 的 key 获取 value 呗,
    这个 value 就是你用户的登录信息。
    ak47007
        16
    ak47007  
    OP
       2019-07-05 19:05:20 +08:00
    其实我想表达的意思是:平时登录都是把信息存在 session 里面,但是我现在不想用 session 了,改用 redis 怎么实现跟存在 session 一样
    xiaomingVTEX
        17
    xiaomingVTEX  
       2019-07-05 19:10:09 +08:00 via Android
    session 保存在 redis
    lawler
        18
    lawler  
       2019-07-05 19:21:06 +08:00
    跨浏览器怎么就无解了!!!这么简单的问题!!你们竟然!!!!做个客户端!!!你看 QQ,不管你用什么浏览器,点鸡空间或者微云都能免登陆!!!


    正儿八经回答一下楼主的问题
    单例项目:cookies 最优关联 redis。
    前后端分离:header 最优关联到 redis。
    Aresxue
        19
    Aresxue  
       2019-07-06 09:36:16 +08:00
    和 Redis 有个揽子关系。。。Session 的原理一般是将后台验证通过后返回的 SessionId 放到 Cookies 里,如果你想实现的是一台机器上多个浏览器只需登录一次,你应该问的是如何跨浏览器共享 Cookies。话说回来这种操作略骚。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2535 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:20 · PVG 09:20 · LAX 17:20 · JFK 20:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.