我正在尝试使用Eclipse的软件包,使用他们的客户端GitHubClient
访问GitHub。
客户端上的一个方法是setOAuth2Token
,它需要一个String标记。我假设这是一个刷新令牌。
无论哪种方式,我都可以使用Spring OAuth2使用GitHub登录,但我不知道如何检索刷新令牌。我可以检索持票人令牌:
@GetMapping()
public PingResponse ping(@Autowired Principal principal) {
OAuth2Authentication userDetails = (OAuth2Authentication) principal;
OAuth2AuthenticationDetails userOAuthDetails = (OAuth2AuthenticationDetails) userDetails.getDetails();
OAuth2ProtectedResourceDetails protectedUserDetails = (OAuth2ProtectedResourceDetails) principal;
logger.info("user details: " + userDetails);
logger.info("user details credentials: " + userDetails.getCredentials());
logger.info("oauth user details: " + userOAuthDetails);
logger.info("token type: " + userOAuthDetails.getTokenType());
logger.info("token value: " + userOAuthDetails.getTokenValue());
logger.info("decoded details: " + userOAuthDetails.getDecodedDetails());
logger.info("Ping on the server was successful.");
return new PingResponse("Connection is successful!");
}
但是,我似乎无法获得刷新令牌。
我希望得到它,以便我可以将其保存在数据库中,以便稍后在上代表用户执行操作,而无需用户登录。
如何获取刷新令牌以便以后保存?
谢谢!