将OAuth验证器值获取为null

将OAuth验证器值获取为null,oauth,Oauth,我正在尝试获取需要OAuth验证器的访问令牌。我使用TokenSecretVerifierHolder类来获取令牌、令牌机密和验证器,但我只获取令牌、令牌机密的值,但是验证器值为空。这是我的密码 public TokenSecretVerifierHolder getRequestToken() { try { OAuthAccessor accessor = getAccessor(); OAuthClient oAuthClie

我正在尝试获取需要OAuth验证器的访问令牌。我使用TokenSecretVerifierHolder类来获取令牌、令牌机密和验证器,但我只获取令牌、令牌机密的值,但是验证器值为空。这是我的密码

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;
}
public TokenSecretVerifierHolder getRequestToken(){
试一试{
OAuthAccessor accessor=getAccessor();
OAuthClient OAuthClient=新的OAuthClient(新的HttpClient4());
列表回调;
if((this.callback==null)| |(“”.equals(this.callback))){
callBack=Collections.emptyList();
}否则{
callBack=ImmutableList.of(新的OAuth.Parameter(“OAuth_callBack”,this.callBack));
}
OAuthMessage=oAuthClient.getRequestTokenResponse(访问器,“POST”,回调);
TokenSecretVerifierHolder tokenSecretVerifier=新TokenSecretVerifierHolder();
tokenSecretVerifier.token=accessor.requestToken;
tokenSecretVerifier.secret=accessor.tokenSecret;
tokenSecretVerifier.verifier=message.getParameter(“oauth_verifier”);
返回令牌secretverifier;
}捕获(例外e){
抛出新的RuntimeException(“获取请求令牌失败”,e);
}
}
私有字符串getAccessToken(){
AtlassianOAuthClientRequest jiraoAuthClient=getJiraOAuthClient();
TokenSecretVerifierHolder requestToken=jiraoAuthClient.getRequestToken();
字符串authorizeUrl=jiraoAuthClient.getAuthorizeUrlForToken(requestToken.token);
字符串令牌=requestToken.token;
字符串tokenSecret=requestToken.secret;
字符串验证程序=requestToken.verifier;
String accessToken=jiraoAuthClient.swapRequestTokenForAccessToken(token,tokenSecret,verifier);
字符串验证程序=requestToken.verifier;
System.out.println(“访问令牌为:“+accessToken”);
返回accessToken;
}

在检索令牌、令牌秘密和验证器的值之后,我将传递它以获取访问令牌值。我想要的是,在我确认authorizeUrl之后,它应该返回给我Oauth验证器的值。在我的例子中,它返回为null。

在HTTP重定向到回调URL的过程中,验证器所需的值将返回给您-重定向发生在URL中,如
https://consumer.url/?oauth_token=TOKEN&oauth_verifier=VERIFIER
,因此,
oauth\u验证器
参数的值就是您所需要的。

在HTTP重定向到回调URL的过程中,验证器所需的值会返回给您-重定向发生在类似
URL的URL中https://consumer.url/?oauth_token=TOKEN&oauth_verifier=VERIFIER
,所以,
oauth\u验证器
参数的值就是您所需要的