2

現在、Grackle Ruby GEM を使用して Twitter API と統合しようとしていますが、少し問題が発生しました。

GETtwitter.com/oauth/request_tokenに対して実行しようとしていますが、 OAuth 仕様によると、次の値を提供する必要があります。

  • oauth_consumer_key
  • oauth_signature_method
  • oauth_signature
  • oauth_timestamp
  • oauth_nonce

この時点で Twitter からは と しか返ってこないので、少し困惑してConsumer KeyConsumer Secretます。私はこれを難しい方法で行っているだけですか?これらの値を正しく入力する方法がわからないためです。私が何を提供しても、Twitterは戻ってきます:

oauth 署名とトークンの検証に失敗しました

私の問題は、一般的にTwitterやOAuthと適切に統合する方法についての一般的な誤解であり、Grackleの詳細ではないようです...しかし、この場合はおそらく情報が多すぎるのが最善です:-)

4

2 に答える 2

2

まず第一に、おそらく最新のOAuth リビジョン 1.0a を読んでいるはずです。ただし、リクエストトークンを取得する際に違いはないので、その点では問題ありません。

それとは別に、OAuth プロセスと Grackle の範囲に関する一般的な誤解が組み合わさったように見えます。

アクセス トークンとトークン シークレットを取得するプロセスは Grackle の範囲外であり、アプリケーションごとにコーディングする必要があります。上記の情報をすべて取得すると、Grackle が有効になります ( source )。

そのため、Grackle を続行する前に、まずアクセス トークンを取得できるライブラリを探します。Moomerman の twitter_oauth は良い選択のようです: http://github.com/moomerman/twitter_oauth

それが役立つことを願っています!

于 2009-11-08T13:00:49.983 に答える
1

私はこれと同じ問題に遭遇し、オンラインで見つけた oauth gem の例はすべて古くなっています。こちらにサンプルコードで解説を書きましたが、基本的な流れは以下の通りです。

  • Twitter からリクエスト トークンを取得し、詳細を保存します。
  • そのトークンを使用してユーザーを Twitter に送信します
  • ユーザーを元に戻し、詳細と Twitter からの応答を使用してアクセス トークンを生成します。
  • アクセス トークンのトークンとシークレットをコンシューマー トークンとシークレットと共に使用して、API 呼び出しを行います。
于 2009-12-14T18:59:42.083 に答える