公司目前所有系统登陆验证都基于一个 Java 写的一个单点登陆,因为本人对 Java 完全不了解,所有也不知道其具体如何实现的。所有旧系统,年代比较久远,前端都是 JSP,然后 cookie + session 这种模式.
现在公司打算开新系统,也要基于这个登陆系统,但是我打算使用 vue 来做前端 SPA。但是登陆这块不知道怎么搞,我看网络上,vue SPA 都是基于 token 的验证的方式,
所以不知道各位大佬有什么解决方式,既能够使用 vue 做这种前后端分离,然后又使用这套登陆系统。
表达可能有不对地方,大致是这个意思。
1
lupkcd 2017-12-15 09:11:19 +08:00
同等答案
|
2
lrz0lrz 2017-12-15 09:46:46 +08:00
vue 也可以使用 cookie+session 啊,原来怎么样,现在还是怎么样就行了
|
3
chairuosen 2017-12-15 09:57:52 +08:00
你要看单点登录实现方式是怎样的?
1,共享二级域名 cookie 的,sso 只是往.xxx.com 写一个 cookie 再跳回来,子系统都是在.xxx.com 同一个一级域名下。 2,回调带临时 token 的,这种就是 oauth 那一套。 1 需要处理一下 cookie 失效的逻辑,一般都是 html 页面跳 302 到登录页,但是 ajax 接口就不能这样做了,要自己封装下,只返回数据。 2 是完全隔离的,不用处理啥。 |
4
whypool 2017-12-15 10:15:16 +08:00
如果登陆页面是 vue 写的,那么前端需要判断一下,加个路由拦截,没登陆的全部跳转到登陆页面的路由;
可以用 cookie 做标记,前提是 cookie 不能是 httponly,否则前端拿不到; 如果登陆页是独立的,那就和前端没啥关系了,后端统一拦截,转发到 vue 前端路由就行,至于 ajax,请求头带 cookie 就行,失效了后端直接 redirect 到登录页面就 ok |
5
lupkcd 2017-12-15 11:58:28 +08:00
|
7
cctv1005s927 2017-12-15 12:38:59 +08:00
nginx 来一个 http 代理吧
|
8
GabrielChen 2017-12-15 13:03:04 +08:00
nginx 反向代理或者 chrome --disable-web-security 后者比较适合你
|
9
ivydom 2019-10-10 16:48:57 +08:00
authing 自带登录表单和各种用户管理代码,可以让开发者使用五六行代码实现认证(使用 jwt token )
可参考:sample*authing*cn |