Facebook ページまたは URL に対するユーザー アフィニティの決定
ユーザーが Facebook ページまたは特定の URL に関心を示しているかどうかを確認するには、 Facebook の API は簡単なソリューションを提供します。ただし、混乱や予期せぬ結果が発生する例もあります。
最初は失敗した結果をもたらした例を詳しく見てみましょう:
FB.api({ method: "pages.isFan", page_id: my_page_id, }, function(response) { console.log(response); if(response){ alert('You Likey'); } else { alert('You not Likey :('); } } );
予想に反して、このコードは、問題のユーザーは確かに興味を示していました (つまり、ページが好きでした)。
注意点は、許可の延長。このような権限が付与されていない場合、コードはユーザーのアフィニティを正確に反映しません。
幸いなことに、Canvas の OAuth 2.0 と $_REQUEST 変数に依存する代替アプローチがあります。署名されたリクエストを解析することで、ページのインタラクション ステータスを含むユーザーに関する情報を取得できます。
function parsePageSignedRequest() { if (isset($_REQUEST['signed_request'])) { $encoded_sig = null; $payload = null; list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2); $sig = base64_decode(strtr($encoded_sig, '-_', '+/')); $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true)); return $data; } return false; } if($signed_request = parsePageSignedRequest()) { if($signed_request->page->liked) { echo "This content is for Fans only!"; } else { echo "Please click on the Like button to view this tab!"; } }
このメソッドを実装すると、ユーザーがページまたは URL とインタラクションしたかどうかを正確に判断できます。彼らの好みをより信頼性高く示すことができます。
以上がAPI を使用して Facebook ページのユーザー アフィニティを正確に判断するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。