やや漠然とした指示をしてくれたクライアントと一緒に仕事をしています。これが私がしていることです(CommonsHttpOAuthConsumer
コンシューマーおよびDefaultOAuthProvider
プロバイダーとして使用)
これを行うことで応答トークンを取得できます。
String requestToken = provider.retrieveRequestToken (OAuth.OUT_OF_BAND);
これはパラメータ付きのURLの形式であるため、実際のトークンを解析しています。たとえば、次のようになります。
https://foobar.com/oauth/login_authorize?oauth_token=XRFCGPbES3M2bYZy...
今-私が得る指示は言う:
Given the request token obtained in step 1, login with the user’s credentials (name and password) as POST parameters and sign the request with the request token/secret POST https://foobar.com/oauth/login_authorize
それは私が苦労しているところです。明らかに、そのrequestTokenをどこかに入力する必要があるので、これを行います(post
ユーザー資格情報を含むHttpPostです)。
consumer.setTokenWithSecret(requestToken, SECRET);
consumer.sign(post);
動作しません。実際には200のステータスが生成されますが、一般的なエラーメッセージが表示されます。