Twitter でアプリを作成しようとしていますが、最初のステップで行き詰まっています。
https://api.twitter.com/oauth/request_tokenに POST しようとしていますが、毎回 401 が返されます。
私は Apache Commns HTTPClient の POST メソッドのバリエーションを使用しています。これは私のツールに非常に固有のものです。そのため、概要図を投稿します。
My Header: 'oAuth '+
'oauth_callback="oob",'+
'oauth_consumer_key="zhaD2Y6RrQaaZQSz21RShA",'+// fake
'oauth_nonce="'+ <random string of 32Characters> +'",'+
'oauth_signature="'+ a.signature +'",'+
'oauth_signature_method="HMAC-SHA1",'+
'oauth_timestamp="'+ <Time in seconds since UNIX epoc> +'"';
このメソッドで署名を生成しています:
ステップ 1: キーと値のペアをパーセンテージ エンコーディングし、Twitter の署名ページに記載されているようにそれらを追加します。
ステップ 2: パーセンテージ エンコーディングの後、POST と URL を追加します。これは私が残したものです:
POST&https%3A%2F%2Fapi.twitter.com%2Foauth%2Frequest_token&oauth_callback%3Doob%26oauth_consumer_key%20%3D%20zhaD2Y6RrQaaZQSz21RShA%26oauth_nonce%3DkYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1318622958,
ここまでは順調ですね..
私の問題はここから始まります.次のステップはキーに署名することです.2つのことが必要です.
- アプリケーションのコンシューマ シークレット
- アクセス トークン (このhttps://dev.twitter.com/docs/auth/creating-signatureページにあるように)
これら 2 つを & で追加してから、HMAC-SHA1 を実行します。しかし、アクセストークンを取得するにはどうすればよいですか?
私はまだ自分の POST を Twitter に送信していませんよね? ここでのアクセス トークンは Bearer トークンを意味しますか?
このページには、アクセス トークンを取得する方法についても言及されていません (実際にはそうですが、このアクセス トークンを正しく取得するために POST を実行しているのですか!?)
ご助力いただきありがとうございます!