2010-12-01 15 views
6

現在、ユーザーが現在Facebookにログインしていて、現在のページが好きな場合は、別のメッセージを表示します。ユーザーがページを好きなときに起動されますどのfacebook graph apiユーザーがURLを好きかどうかを判断

FB.Event.subscribe('edge.create', function(response) { 
    // you like this 
}); 

、しかし、あなたは彼らすでに現在のページのように決定しますどのようにページをリロードする場合:私は理解できますか?

ありがとうございます!

あなたのように、彼のidで、ユーザの好みを得ることができますグラフAPIから

答えて

0

https://graph.facebook.com/me/likes?access_token=2222222222222222

:あなたはあなたのアクセストークンとを入れ同類を取得するためにそう

https://graph.facebook.com/ID/CONNECTION_TYPE

あなたのページが好きかどうかを探してください。

しかし、私は実際にLikesのために試していないFQLクエリを試すことができます。

私は助けて欲しい。

+0

**ユーザーの**アクセストークンが必要です。 – ceejayoz

+0

はい私は2番目の例のリンクでこれを言及しました – Rabea

2

あなたはこのページを「現在のページ」として説明していますが、iframeのタブにあることを理解しています。この場合、署名された要求はその情報を$decode_signed_request = array('page' => array('liked' => true/false))として提供します。

それ以外の場合は、キャンバスページにGETパラメータfb_page_idを指定できます。キャンバスページには、ユーザーがそのページのファンであるかどうかによって、サーバーリクエストにパラメータfb_sig_addedを0/1で含める必要があります。 (これにより、移行設定でOAuth 2.0が無効になっている必要があります)

開いたグラフURLのようなソーシャルプラグインについて話している場合は、アプリケーションがインストールされていないファンであるかどうかを簡単に確認できません。あなたが持っている場合は、/me/likesへのAPI呼び出しを行うことができ、ユーザーが持っているすべてのお気に入りのリストを返し、テスト対象のオブジェクトのIDを検索します。

+0

これは、アプリケーションがFacebookのページタブとして設定されている場合にのみ機能します。そして、現在のユーザーがこのFacebookページを好きだったかどうかを伝えます。 – challet

+0

私の元々の仮定は、私の最初の文で述べられているものに基づいています。それ以外の場合は、アプリのインストールが必要です。同様のボタンをクリックすると、ユーザーがバックエンドセッションで好きだったフラグを保存することもできます。 – Bryan

3

私はあなたが(この文脈で)あなたがしたいことはできないと確信しています。

は、このページを見てみましょう:http://fbrell.com/fb.api/does-like

あなたは同類を表示する権限を承認するためにユーザが必要表示されます。

現在のページであっても、誰かがユーザーの「好き」を見られるようにすることは、大きなセキュリティ上のリスクです。それを考えれば、現在のページを簡単に偽装して、どのページでもふりをすることができます。私は、ユーザーがページを「好き」するときにだけ(JavaScriptで)あなた自身の利益のためにクッキーを設定してくださいお勧めは何

しかし...

。あなたがこのページからあなたの「お好きなもの」の大部分を得ているとすれば、クッキーの存在を「好き」と安全に相関させることができます。

これを行うセキュリティの例外がいくつか見られましたが、少なくともChromeでは機能しているようです。

1

FacebookがREST APIを非推奨にしているので、Graph APIを使用する方が安全です。だから、ユーザーがあなたのページを気に入るようにするには、あなたのアプリケーションのページIDとアクセストークンが必要です。 PAGE_IDをチェックしたいページのIDです

https://graph.facebook.com/me/likes/PAGE_ID?format=json&access_token=ACCESS_TOKEN

  • 、ACCESS_TOKENはあなたのアプリケーションアクセストークンです。データベースのユーザIDまたはthird_party_id保存
+1

は、Facebookページでのみ動作し、URLで動作しません。 – challet

0

ユーザーがthird_party_id

graph.facebook.com/me/?fields=third_party_id & access_tokenは= xxxは

0
https://graph.facebook.com/{FB_USER_ID}?fields=likes.target_id(167584559969748)&access_token={VALID_ACCESS_TOKEN} 
を取得するためのリンク

を言っていたときに

は、そのユーザーがFacebookのファンページを好きならデータを表示します。

または

https://graph.facebook.com/{FB_USER_ID}?fields=likes.fields(link) 

あなたが探しているリンクを得ることができるところから、気に入ったリンクのリストが表示されます。

これらのすべてに「user_likes」および/またはfriend_likes権限が必要です。

関連する問題