github授权登录无法获取授权账号信息?
在spring boot论坛项目中,用户使用github授权登录却无法获取授权账号信息,这是许多开发者会遇到的问题。
可能原因:
出现此问题的原因可能是:
access_token无效:
确保你使用的access_token是有效的,而且是从授权的github账户获取的。
access_token暴露在url中:
不要将access_token作为url中的参数明文传输。应将其作为authorization http header中的参数传输。
解决方法:
Git
程序猿必备版本控制工具
下载
1. 检查access_token有效性
再次从github授权,并获取新的access_token。
验证access_token是否正确,可以尝试手动在浏览器中使用access_token访问github api。
2. 将access_token放入authorization header中
使用authorization header传输access_token,而不是将其作为url参数。
例如:
// 创建一个新的HTTP header,并设置Authorization
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", "token " + accessToken);
// 使用新的HTTP header发送请求
ResponseEntity response = restTemplate.exchange(
"https://api.github.com/user",
HttpMethod.GET,
new HttpEntity<>(null, headers),
GitHubUser.class); 