- 35
- 0
看了一些网上的教程(教程地址:https://juejin.im/post/5a7ae6... ), spring social提供了一个ConnectController实现了绑定与解绑
其中前端发送 /connect/{providerId}(DELETE请求) 就能解除相关绑定
然后说在调用该请求之后会返回 connect/{providerId}Connect 的这样一个视图, 但这个视图需要自己扩展实现
但我自己编写发现确实能删除数据库中的绑定, 但不会跳转到connect/{providerId}Connect, 而是不断的死循环, 最后前端返回ERR_TOO_MANY_REDIRECTS, 查看ConnectController的源码
@RequestMapping(value="/{providerId}", method=RequestMethod.DELETE)
public RedirectView removeConnections(@PathVariable String providerId, NativeWebRequest request) {
ConnectionFactory<?> connectionFactory = connectionFactoryLocator.getConnectionFactory(providerId);
preDisconnect(connectionFactory, request);
connectionRepository.removeConnections(providerId);
postDisconnect(connectionFactory, request);
return connectionStatusRedirect(providerId, request);
}
protected RedirectView connectionStatusRedirect(String providerId, NativeWebRequest request) {
HttpServletRequest servletRequest = request.getNativeRequest(HttpServletRequest.class);
String path = "/connect/" + providerId + getPathExtension(servletRequest);
if (prependServletPath(servletRequest)) {
path = servletRequest.getServletPath() + path;
}
return new RedirectView(path, true);
}
private String getPathExtension(HttpServletRequest request) {
String fileName = WebUtils.extractFullFilenameFromUrlPath(request.getRequestURI());
String extension = StringUtils.getFilenameExtension(fileName);
return extension != null ? "." + extension : "";
}
上面的源码并没有将/connect/{providerId}转换成connect/{providerId}Connect啊, 最后的return connectionStatusRedirect(providerId, request) 不还是会回到removeConnections中吗?
- 共 0 条
- 全部回答
-
我美跟我走 普通会员 1楼
在Spring Social中,如果你的社交账号被解绑后,你的应用程序将无法正确地从Spring Social中获取用户信息。这可能是由于Spring Social使用了Spring Boot的身份验证机制,当用户解绑账号时,Spring Social可能会试图连接到该账号的Spring Boot应用程序。
要解决这个问题,你需要在应用程序中确保每个用户都有一个唯一的Spring Social用户。你可以在Spring Boot应用程序中创建一个用户类,并使用Spring Social提供的用户认证API来验证用户。
同时,你还需要确保Spring Social在解绑账号后能够正确地更新其用户的用户信息。你可以使用Spring Social的用户管理API来更新用户的用户信息。
如果你在使用Spring Social的过程中遇到任何问题,建议你查阅Spring Social的文档,或者联系Spring Social的开发者以获取更多帮助。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
