Androidアプリからflickr.comのユーザーを認証するために、Oauth署名を生成しようとしています。
flickr.comの記事によると、署名を取得するには署名リクエストを送信する必要があります。flickr.comガイドページへのハイパーリンクは次のとおりです。
http://www.flickr.com/services/api/auth.oauth.html#request_token
投稿によると、署名キーを受け取るには、次のようなリクエストをflickrサーバーに送信する必要があります。
http://www.flickr.com/services/oauth/request_token
?oauth_nonce=89601180
&oauth_timestamp=1305583298
&oauth_consumer_key=653e7a6ecc1d528c516cc8f92cf98611
&oauth_signature_method=HMAC-SHA1
&oauth_version=1.0
&oauth_callback=http%3A%2F%2Fwww.example.com
上記の形式でアプリからリクエストを送信しましたが、受け取ったのはoauth_problem = parameter_absent&oauth_parameter_absent=oauth_signatureというエラーだけです。
私のリクエストコードは次のとおりです。
HttpGet get = new HttpGet("http://www.flickr.com/services/oauth/request_token?oauth_nonce="+nonce+"&oauth_timestamp="+ts+"&oauth_consumer_key=****&oauth_signature_method=HMAC-SHA1&oauth_version=1.0");
実際の問題は、私が署名を要求しているURLが間違った方法で応答していることです。署名を返す必要がある場所、署名を要求します。