Facebook、Twitter、Google Plus を別の Web アプリに統合して、そのアプリ内の投稿を Facebook のステータス、Twitter のつぶやき、Google Plus のステータスとして書き出すようにします。これを Ruby on Rails を使用して開発しています。これについてですが、私に役立つものは何も見つかりませんでした。これに役立つリンクやアイデアを投稿できます。
3 に答える
これらの API にアクセスするために利用できる gem はたくさんあります。
API は不安定なので、 resqueのようなキューイング システムを使用して Post#after_create で呼び出しをキューに入れ、resque ワーカーに呼び出しを非同期的に実行させるのが最善です。
Facebook とのインターフェースには Koala ( https://github.com/arsduo/koala/wiki ) を使用することをお勧めします。これは、最もよく維持されている fb ライブラリです。
それ以外の場合は、OAuth2 について 1 つまたは 2 つのことを学ぶ必要があります。
- https://github.com/intridea/oauth2
- https://developers.facebook.com/docs/authentication/
- https://developers.google.com/accounts/docs/OAuth2
https://github.com/sferik/twitterを使用して、Twitter とやり取りします。
Google の場合、既存の API ラッパーを使用するよりも XML チャットを手動で実装する方が簡単であることがわかりました。XML 応答をデータに変換するにはResponse#parsed
、oauth2 gem のメソッドと ActiveSupportのメソッドを組み合わせて使用しますArray.wrap
(XML パーサーが単一のノードを、1 回だけ出現する可能性のある反復ノード (つまり配列) に伝える方法はありません。私の観点では、XMLの非常に大きな欠点です)
または、Google に直接 JSON を要求することもできます。そのため、データは既に正しく構造化されています。
そして、@brendan-benson が非常に正確に言っているように、バックグラウンド ワーカーでのみ API 呼び出しを行い、通常の要求/応答サイクルでは決して行いません。