JOJO老师,急急急急急急急急急急急急急急急!!!!!!!!!!

来源:6-6 重构社交登录

weixin_慕斯卡6063904

2019-02-28

图片描述
JOJO老师,图上第3步和第4步,你是先用demo项目依赖browser项目,通过在拿到token之前打断点,模拟APP的拿到授权码的行为,再用demo项目依赖app项目,将授权码发给第三方应用client。但是实际上我在前后端分离的项目当中实现的时候,假设APP端口是4040,后台端口是8080.如果先用4040端口去请求获得code,然后再用这个code拼上8080端口去请求后台,那么这个code实际上是无效的,无法获得token。所以redirectUrl中必须是8080端口,需要把这个redirectUrl+code原封不动的给到第三方Client(后台),但是APP和第三方应用Client的端口并不一致,所以到底应该怎么实现呢?

写回答

1回答

JoJo

2019-03-04

用web的前后端分离和app的前后端分离处理是不一样的,如果你是web的前后端分离,你在第一步将用户导向认证服务器时,带着的redirectUrl就应该是后台的url,也就是你的场景中的8080端口的url,这样认证服务器就直接跳回后台了,后台拿到令牌以后,直接写到cookie里或者作为参数携带着跳转到前台的url上。

0
1
weixin_慕斯卡6063904
JOJO老师,具体要怎么实现呢?accessToken是在OAuth2AuthenticationService这个类的getAuthToken方法里面获得的,难道是要重写这个方法,然后返回给前台嘛?作为Java新手,还是有点懵的,请老师详细解释下,谢谢!
2019-03-04
共1条回复

Spring Security技术栈开发企业级认证与授权

Spring Security技术栈,REST风格开发常见接口,独立开发认证授权模块保证REST服务安全

2662 学习 · 1560 问题

查看课程