2012-03-05 10 views
0

私はデータベースとしてmongoDBを使ってnode.jsアプリケーションを開発しています。私は非常にシンプルなFacebookの統合の開発に取り組んでいます.FBへのユーザー認証をアウトソーシングすることに加えて、ユーザーのFB友人のリストを取得したいので、あとで友だちの壁に投稿するオプションがありますアプリ。ユーザーのFacebook情報を最新の状態に保つ理想的な方法はありますか?

しかし、私はこの問題に近づく最も良い方法は何かを理解することはできません。明らかに、この情報はかなり頻繁に(新しい友人など)変更されるので、初めてユーザーがログインして忘れてしまったとき、私のデータベースに簡単に友達を保存することはできません。それと同時に、ログインするたびにFBからユーザーのフレンドリストを取得するのは現実的ではないようです。別の方法として、フレンドリストを保存しないで、必要なときにFacebookにGETリクエストを送信するだけです。 FB機能との統合をさらに進めていくと、かなり効率が悪くなります。最後に、私はFacebookのリアルタイムサブスクリプションAPI - https://developers.facebook.com/docs/reference/api/realtime/について読んでいます。これにより、フレンドリストを即座に更新することができますが、開発するためにもう少し作業が必要になるかもしれません。

私はこれがかなり一般的な課題であると考えていますので、他の人たちがこの問題にどのように取り組んでいるのか疑問に思っていたのですが、スタンドアローンのアプリケーションでFB情報を管理するための "ベストプラクティス"

答えて

0

本当にそのデータを使用するかによって異なります。それが更新さを維持するために、

  • 必要なときに
  • いくつかの分を期限切れ/時間後、友人のリストを取得し、キャッシュ
  • スクリプトポーリングすべてのユーザー、1時間に1回ほどの友達リストを取得する:あなたは2つのことを行うことができます
+0

意味があります。私は、今のところ必要になったときに友人リストを取得することにしました(GETが行われている間、ロード状態を示すUI要素を使用して)。私は、より深いFB統合を追加し始めた後、そのデータをデータベースに保存/更新するためのより良い方法を考案しようと考えています。 – BlueMoon

0

Facebookのウィジェットのヘルプに似た概念がありますか。 「閲覧専用」モードでは、ウィジェット領域が完全な友人リストのサブセットを表示しているので、データベースにキャッシュされている友人のリストを表示することができます。更新が行われる(友人またはそのような人を指名する)状況では、Facebookに問い合わせてデータが最新であることを確認する必要があります。

関連する問題