H5W3
当前位置:H5W3 > 问答 > 正文

混合前后端分离的用户登录状态如何同步?

网站结构如下:
后端:thinkphp
主站前端:thinkphp的默认模板
用户中心:VUE+jwt的方式与后端通信登录

主站网址:www.abc.com
用户中心:center.abc.com

用户通过用户中心网站登陆后,如何在主站www.abc.com同步登录状态呢?

回答

牵涉到单点登录,不管你访问a.abc.com还是b.abc.com, 一般都要拿着已经完成login的center这个site的session去center绕一圈(使用get方法重定向到center,自带cookie里的sessionid)。然后由center判断是否已经登录,并告诉a说,您放心的让他访问吧。。。

具体可以google下sso的saml协议~也可以自己实现。

你举例的里面,域名是一个,很简单,设置cookie域名为*.abc.com就可以实现
如果域名不是一个,比如a.com和b.com要实现,完整的方案是楼上说的实现SSO,当然小项目太麻烦,可以直接按照ucenter的逻辑,a.com登录的时候,访问b.com一个东西(作用是用来设置登录cookie)

本文地址:H5W3 » 混合前后端分离的用户登录状态如何同步?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址