問題タブ [fb-graph]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - fb_graphレール:すべての友達をmongoidに保存する方法は? each/map を使用するとなぜこんなに遅いのですか?
上記のコードで、すべての友達の名前を取得できましたが、実行速度が非常に遅いです。すべての友達を取得するのに 10 分以上かかりました。
それで、何が問題なのだろうと思っていました。繰り返しを使用して友達をループする代わりに、@fb_friends を json に変換して mongoid に保存することで直接保存できますか?
ありがとう
ruby - fb_graph で omniauth を使用する必要がありますか?
Railsアプリでユーザーを認証するためにomniauthを使用しています.fb_graph gemについてよく読んでいて、疑問に思っていました:
- fb_graph は平易な英語で何をしますか?
- ユーザーのFacebookの友達をすべて取得したい場合にのみomniauthを使用でき
ますか? - 認証とユーザー情報データの取得の両方に fb_graph を使用する人もいますが、omniauth を fb_graph で使用するのと、fb_graph のみを使用するのとでは、どちらが最適ですか?
リンク先: fb_graph gem リンク先: omniauth-facebook
ruby-on-rails - fb_graph base64 でエンコードされた文字列から写真をアップロード
postmarkapp から添付ファイルを受信しています (ここで説明: http://developer.postmarkapp.com/developer-inbound-parse.html#attachments )。
その写真を使ってfb_graph(https://github.com/nov/fb_graph)を使ってfacebookにアップしたい!メソッド (https://github.com/nov/fb_graph/wiki/Photo-and-Album)。
これは簡単で、実際のファイルから例のように :source を指定してテストするとうまくいきます。
ただし、ファイルに書き出すのではなく、base64 でエンコードされた文字列を StringIO に変換し、それを :source 引数として渡すだけです。これは機能せず、次のエラーが発生します。
ruby
FbGraph::InvalidRequest: OAuthException :: (#324) Requires upload file
ファイルを書き出したくない理由は、heroku とdelayed_job を使用しているためです。そのため、ジョブが処理されたときに書き出したファイルがまだ残っているかどうかわかりません。ただし、私の現在の計画は、遅延ジョブで画像をデータベースに保存することであるため、それは素晴らしいことです。
ありがとう。
facebook - 推奨事項を読み取るための Facebook Graph API
fbgraph api を使用していくつかのデータにアクセスできますが、「推奨」データを読み取る方法が見つかりませんでした。
例: Facebook ページ www.facebook.com/cozycaterers の場合、その推奨コンテンツはカバー写真の下の右側に表示されます。
誰かが私を助けてくれませんか。
前もって感謝します。
ruby-on-rails - koala Ruby gem を使用して Facebook から友達の education_history を取得する
ユーザー フレンドの education_history を取得したいのですが、koala gem と rubyonrails を使用しています。
omniauth の初期化ファイルに、ユーザー フレンドの education_history を取得するためのアクセス許可を追加しました。:scope => 'user_education_history,friends_education_history
これまでのところ、ユーザー フレンドの :name と :id を取得できますが、ユーザー フレンドの education_history を取得する方法がわかりません。
何か案は?
ruby - Ruby on Rails サイトのプロファイリング方法
私の RoR ウェブサイトhttp://www.karmabee.netをプロファイリングする最良の方法は何ですか?
私は fb_graph GEM を使用していますが、これは特に友達リストを取得するときにかなり遅いです。Twilio は、SMS テキストを送信するときもかなり遅いです。
したがって、それらを最適化できるかどうかはわかりません。いずれにせよ、最初にサイトのプロファイルを作成する方法を理解する必要があります。
何か案は?
iphone - Facebook ウォールに画像を投稿するには?
このチュートリアルを使用して、Facebook http://www.raywenderlich.com/1626/how-to-post-to-a-users-wall-upload-photos-and-add-a-like-button-from-に正常にログインできますyour-iphone-app しかし、iOS 用の facebook の経験はありません。
しかし、ここで、画像の URL を渡す方法を混乱させました。bcz 私の画像は同じページにあります。また、このコードを使用すると、次の 4 つのエラーが表示されます。
運がない。どうしたの?前もって感謝します
ruby-on-rails - Facebookのような投稿に画像と説明を表示するにはどうすればよいですか
FacebookアプリページでFacebookのいいねボタンを使用しています。ユーザーがページを気に入ると、その URL だけがウォールに投稿されます。
私は次のことを試しました
並んで
アプリはrailsで書かれています。これに対する解決策はありますか?
ruby-on-rails - Facebook の友達の長いリストを読み込む際のパフォーマンスの向上
Rails プロジェクトの一部として、ユーザーが FB の友達に招待状を発行できる機能があります。私は API 呼び出しに fb_graph を使用しています。以下は、ユーザーが招待ページにアクセスしたときのコントローラーからのコードのサンプルです。
この操作は非常にコストがかかります。1000 人以上の友達を持つユーザーの場合、30 秒以上かかることがわかりました。また、このコードは、ユーザーが招待ページにアクセスするたびに再実行されます。ユーザーの FB フレンド リストは厳密には静的ではありませんが、リクエストごとにこれを再計算しなくても問題ありません。
だから私がやりたいのは、このコードを改善してより効率的にすることです。これを行う可能性のあるいくつかの異なる方法を考えることができますが、この場合、何が最も理にかなっていますか? これは、私が通常 SO で質問するよりも少しオープンエンドですが、私はまだプログラミングに比較的慣れていないので、あなたが何をするか/しないかについて、どのように行うかと同じくらい興味があります。それ。
私ができる最適化に関するいくつかのアイデアを次に示します。
1) セッション内でのみ最適化します。このコードは、ページが最初に表示されたときに実行され、セッションの残りの間保持されます。私は実際にこれを行う方法がわかりません。
2) データベースに永続化します。友達のハッシュを保持するユーザー テーブルに列を追加します。バックグラウンド ジョブを使用して、このデータを定期的に更新できます (週に 1 回程度でしょうか?)。
3) キャッシュを保持します。これに何が関係しているのか、またはこれが適切なユースケースであるかどうかも正確にはわかりません。オプション 2 には多くの手作業によるメンテナンスが必要であり、有効期限などを処理する適切なキャッシュ ソリューションがあるのではないかと思いますが、よくわかりません。
他のアイデア?オプションについてのあなたの考えに感謝します。
更新 # 1
私が行った最初の実験にもう少し追加します。@fb_friends 配列を保持するユーザー テーブルに列を追加しました (上記の変換の後処理)。基本的に、上記のコントローラー コードは単純に @fb_friends = current_user.fbfriends に置き換えられます。上記のすべての処理は言うまでもなく、Facebook への呼び出しがなくなるため、これにより負荷が大幅に削減されると思いました。これにより、多少の時間は節約されましたが、期待したほどではありませんでした。私自身の友達リストはローカル マシンにロードするのに約 6 秒かかりましたが、これらの変更が 4 秒に短縮された後です。負荷の問題で、ここでもっと大きな何かが欠けているに違いありません。
更新 #2
さらに調査したところ、データ転送のほぼ半分が「招待」ボタンに使用していたフォームによるものであることがわかりました。フォームは友達ごとに 1 回読み込まれ、次のようになります。
フォームを削除し、内部にシンプルなボタンを配置することにしました。
次に、ajax を使用してクリックを検出し、適切なアクションを実行しました。この変更により、データ転送が文字通り半分になりました。約 500 人の友達をロードする前は ~650kb かかりましたが、現在は ~330kb に減少しています。
前処理を行うために、更新 # 1 で試したことをもう一度試してみようと考えています。組み合わせると、これを最大2秒の操作にできることを願っています。
更新 #3
Miniprofilerをインストールして、この操作が遅くなる原因を詳しく調べたところ、上記の for ループがすべての友人の DB に移動するため、非常に非効率的であることがわかりました。私は別の質問に投稿し、旅行を1つに減らすための助けを得ました. 次に、アップデート #1 で述べた前処理を実装しました。これらすべての変更により、このパスをたどる前に +20 秒以上かかっていたことを考えると、驚くべきことに 700 ミリ秒まで短縮されました!
facebook - Facebook Open Graph がタイムラインに表示されない
アプリケーションで FB Open Graph を使用しています。完全に機能していません。オブジェクトを投稿すると、ユーザーの最近のアクティビティに表示されます。ただし、タイムラインには表示されません。メタデータにエラーはなく、FBGraph gem を使用していますが、curl を使用しても機能しません。これを修正するためのアドバイスはありますか?