Java Reference
In-Depth Information
authorizeUrl, accessTokenUrl, requiresVerification);
}
public OAuthPostSignatureParameters getOAuthPostSignatureParameters() {
OAuthPostSignatureParameters parameters = new OAuthPostSignatureParameters();
parameters.consumerKey = consumerKey;
OAuthCredentialsResponse accessToken = getAccessToken();
parameters.token = accessToken.token;
// Twitter is sometimes picky on requiring a callback in every request
// As well as the original verifier
parameters.callback = " http://127.0.0.1/";
if (requiresVerification)
parameters.verifier = getStoredVerifier();
// Construct a new signer
OAuthHmacSigner requestSigner = new OAuthHmacSigner();
requestSigner.clientSharedSecret = consumerSecret;
requestSigner.tokenSharedSecret = accessToken.tokenSecret;
parameters.signer = requestSigner;
return parameters;
}
}
This class simply extends OAuthParametersProvider and adds an extra method, which does not
return a set of OAuthParameters , but OAuthPostSignatureParameters instead. The reason for
this is that Google's OAuth Client Library for Java does not allow you to include POST parameters in
the signature, something that Twitter requires (see https://dev.twitter.com/docs/auth/cr eat-
ing- signature ). Thus, you need to roll your own OAuthPostSignatureParameters , which is very
similar to Google's OAuthParameters :
package com.twitter.api;
import com.google.api.client.auth.oauth.OAuthSigner;
import com.google.api.client.http.GenericUrl;
import com.google.api.client.http.HttpContent;
import com.google.api.client.http.HttpExecuteInterceptor;
import com.google.api.client.http.HttpRequest;
import com.google.api.client.http.HttpRequestInitializer;
import com.google.api.client.http.UrlEncodedContent;
import com.google.api.client.util.escape.PercentEscaper;
import java.io.IOException;
import java.security.GeneralSecurityException;
import java.security.SecureRandom;
import java.util.Collection;
import java.util.Map;
import java.util.TreeMap;
public final class OAuthPostSignatureParameters
Search WWH ::




Custom Search