2015-07-02 72 views
0

我需要使用access_token訪問我的podio應用程序,而不是使用用戶名和密碼。我嘗試使用用戶名和密碼及其工作finr我的代碼。 我使用如何使用access_token獲取我的應用程序的內容

ResourceFactory resourceFactory = new ResourceFactory(
     new OAuthClientCredentials("usedClientId","usedClientSecret"), 
     new OAuthUsernameCredentials("[email protected]","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"); 

和我越來越像

{ 
accesstoken: "ae566736ffdb414ab23320c9d169d8a" 
tokentype: "bearer" 
ref: { 
type: "app" 
id: 88069 
}- 
expiresin: 98800 
refreshtoken: "96bbfb0dd9e74ac6ad456f44896c4d3e" 
} 

其是200響應在JSON的形式的響應。 我接受了使用https://github.com/podio/podio-java/tree/master/src/main/java/com/podio但沒用的幫助。 另請參閱https://developers.podio.com/authentication哪裏也沒有幫助。 現在,我如何在我的java代碼中使用這個access_token?

回答

0

首先,不要在這樣的網站上發佈應用程序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(); 
+0

對不起,但這不是我的真實身份或祕密。 –

+0

如果你檢查https://github.com/podio/podio-java/tree/master/src/main/java/com/podio然後那裏ResourseFactory類只有兩個構造函數被定義,我需要使用,但在每已經添加了需要用戶名和密碼的構造函數OAuthUsernameCredentials。所以我的問題是如何只使用access_token來檢索應用信息。 –

相關問題