Java 如何使用access_令牌获取我的应用程序的内容

Java 如何使用access_令牌获取我的应用程序的内容,java,json,podio,Java,Json,Podio,我需要使用access_令牌访问我的podio应用程序,而不是使用用户名和密码。我尝试使用用户名和密码的代码及其工作finr。 我正在使用 ResourceFactory resourceFactory = new ResourceFactory( new OAuthClientCredentials("usedClientId","usedClientSecret"), new OAuthUsernameCredentials("abc@ggtd.com","Te

我需要使用access_令牌访问我的podio应用程序,而不是使用用户名和密码。我尝试使用用户名和密码的代码及其工作finr。 我正在使用

 ResourceFactory resourceFactory = new ResourceFactory(
       new OAuthClientCredentials("usedClientId","usedClientSecret"),
       new OAuthUsernameCredentials("abc@ggtd.com","Test123"));
   APIFactory apiFactory = new APIFactory(resourceFactory);
   ItemAPI itemAPI = apiFactory.getAPI(ItemAPI.class);
但我需要使用accesstoken,这样我就不会依赖用户名和密码来访问应用程序。为此,我尝试使用

URL url = new URL("https://podio.com/oauth/token?granttype=app&appid=88069&apptoken=6a83845c6656ff4678a5eec668a10aa3e7&clientid=usedClientId-79unji&redirecturi=https://podio.com/abcd/workappname/apps/usedClient&client_secret=jIfs6qWsQJJ99eDDds1RMhmbKywAhsMtTYLFW8GVeFmmeAiCYOOdzDyc3yqdHBT");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("Accept", "application/json");
我得到了类似JSON的响应

{
accesstoken: "ae566736ffdb414ab23320c9d169d8a"
tokentype: "bearer"
ref: {
type: "app"
id: 88069
}-
expiresin: 98800
refreshtoken: "96bbfb0dd9e74ac6ad456f44896c4d3e"
}
这是200个响应。 我接受了使用的帮助,但没有用。 也请参考没有帮助的地方。
现在,我如何在java代码中使用这个访问令牌?

首先,不要在这样的网站上发布应用程序id和机密

您可以使用任何JSON解析库来获取此信息,例如,GSON的最简单示例如下:

public class AuthInfo {
    private String accesstoken, tokentype, ...

    public String getAccessToken() {
        return accesstoken;
    }
}

// ...

Gson gson = new Gson();
String accessToken = gson.fromJson(response, AuthInfo.class).getAccessToken();

你试过OAuth证书吗

您应该能够使用实现OAuthUserCredentials的OAuthRefreshTokenCredentials,并允许您使用刷新令牌而不是用户名/密码(在OAuthUsernameCredentials中是必需的)


很抱歉,这不是我的真实id或机密。如果您检查了ResourceFactory类,其中只定义了两个我需要使用的构造函数,但在每个构造函数中添加了OAuthUsernameCredentials,它需要用户名和密码。因此,我的问题是如何仅使用access_令牌检索应用程序信息。