2016-10-17 6 views
1

OAuthベリファイアが必要なアクセストークンを取得しようとしています。 TokenSecretVerifierHolderクラスを使用してトークン、トークンシークレット、およびベリファイアを取得していますが、トークン、トークンシークレットの値を取得していますが、ベリファイア値はnullになります。ここに私のコードです。OAuthベリファイアの値をヌルとして取得する

public TokenSecretVerifierHolder getRequestToken() { 
     try { 
      OAuthAccessor accessor = getAccessor(); 
      OAuthClient oAuthClient = new OAuthClient(new HttpClient4()); 
      List<OAuth.Parameter> callBack; 
      if ((this.callback == null) || ("".equals(this.callback))) { 
       callBack = Collections.emptyList(); 
      } else { 
       callBack = ImmutableList.of(new OAuth.Parameter("oauth_callback", this.callback)); 
      } 
      OAuthMessage message = oAuthClient.getRequestTokenResponse(accessor, "POST", callBack); 
      TokenSecretVerifierHolder tokenSecretVerifier = new TokenSecretVerifierHolder(); 
      tokenSecretVerifier.token = accessor.requestToken; 
      tokenSecretVerifier.secret = accessor.tokenSecret; 
      tokenSecretVerifier.verifier = message.getParameter("oauth_verifier"); 
      return tokenSecretVerifier; 
     } catch (Exception e) { 
      throw new RuntimeException("Failed to obtain request token", e); 
     } 
    } 

private String getAccessToken() { 

    AtlassianOAuthClientRequest jiraoAuthClient = getJiraOAuthClient(); 
    TokenSecretVerifierHolder requestToken = jiraoAuthClient.getRequestToken(); 
    String authorizeUrl = jiraoAuthClient.getAuthorizeUrlForToken(requestToken.token); 

    String token = requestToken.token; 
    String tokenSecret = requestToken.secret; 
    String verifier = requestToken.verifier; 

    String accessToken = jiraoAuthClient.swapRequestTokenForAccessToken(token, tokenSecret, verifier); 
    String verifier = requestToken.verifier; 
    System.out.println("Access token is : " + accessToken); 
    return accessToken; 
} 

トークンの値を取得した後、トークンシークレットとベリファイアを渡して、アクセストークン値を取得します。私が望むのは、私がauthorizeUrlを認めた後、それは私にOauth検証者の価値を返すはずです。私の場合、nullとして返す。

答えて

0

コールバックURLへのHTTPリダイレクト時に、検証者の必要な値が返されます。https://consumer.url/?oauth_token=TOKEN&oauth_verifier=VERIFIERのようなURLでリダイレクトされるため、oauth_verifierの値が必要な値になります。

関連する問題