认证服务器只是跳转到10.100.125.24:8080?code=xxx,但是这个是后台的ip+port,APP无法得到,怎么原封不动的把code给后台?

来源:6-7 重构注册逻辑

weixin_慕斯卡6063904

2019-02-28

jojo老师,急急急!你说由APP去请求认证服务器,并得到一个10.100.125.24:8080?code=xxx,然后将这个10.100.125.24:8080?code=xxx原封不动的给到第三方Client。但是APP和第三方Client的端口号都不一致,这个redirectUrl根本就不可能一致,如果8080是后台端口,那么APP端无法拿到这个code.如果8080是APP端口,那么再用这个code拼上后台端口去请求后台,那么这个code实际上是无效的,无法获得token。所以我觉得根本没法实现,可以帮忙解释一下嘛?感激不尽!

写回答

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-13
共1条回复

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

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

2662 学习 · 1561 问题

查看课程