Java 如何使用SpringBoot获取Fitbit API的访问令牌?
我正在尝试使用SpringBoot授权代码流实现FitbitAPI 在这个过程中,我能够用fitapi对用户进行身份验证。后来认证成功后,, Fitbit指向我的重定向URL。现在到我的重定向URL,我可以得到代码了。现在,使用此代码,如何获取Java 如何使用SpringBoot获取Fitbit API的访问令牌?,java,spring-boot,spring-security-oauth2,okhttp,fitbit,Java,Spring Boot,Spring Security Oauth2,Okhttp,Fitbit,我正在尝试使用SpringBoot授权代码流实现FitbitAPI 在这个过程中,我能够用fitapi对用户进行身份验证。后来认证成功后,, Fitbit指向我的重定向URL。现在到我的重定向URL,我可以得到代码了。现在,使用此代码,如何获取访问\u令牌 下面是我的代码 我得到以下输出 Response{protocol=h2, code=400, message=, url=https://www.fitbit.com/oauth2/token} 不要重新发明OAuth2;你使用的“Spr
访问\u令牌
下面是我的代码
我得到以下输出
Response{protocol=h2, code=400, message=, url=https://www.fitbit.com/oauth2/token}
不要重新发明OAuth2;你使用的“SpringSecurityOAuth2”标签是有原因的。对不起,我可以从你那里得到帮助
@GetMapping(value="/")
public String data1(@RequestParam("code") String code) throws IOException {
String bb="client_id={client id}&grant_type=authorization_code&redirect_uri=
http%3A%2F%2Flocalhost%3A8080%2F&code="+code;
String encodedUrl11 = Base64.getUrlEncoder().encodeToString(bb.getBytes());
byte[] decodedBytes11 = Base64.getUrlDecoder().decode(encodedUrl11);
String decodedUrl11 = new String(decodedBytes11);
RequestBody body = RequestBody.create(mediaType,decodedUrl11 );
Request request = new Request.Builder()
.url("https://www.fitbit.com/oauth2/token")
.post(body)
.addHeader("Content-Type", "application/x-www-form-urlencoded")
.addHeader("Authorization","Basic {basic token}")
.build();
Response response = client.newCall(request).execute();
System.out.println(response);