Java 如何使用SpringBoot获取Fitbit API的访问令牌?

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

我正在尝试使用SpringBoot授权代码流实现FitbitAPI

在这个过程中,我能够用fitapi对用户进行身份验证。后来认证成功后,, Fitbit指向我的重定向URL。现在到我的重定向URL,我可以得到代码了。现在,使用此代码,如何获取
访问\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);