Facebook Connect用のJS SDKとPHP SDKの両方のv3を使用しています。サンプルコードhereを見たとき、私は初めに大規模なコメントとログアウトコード懸念私の位置セッションが有効であることを確認するために、常にテストクエリを実行する必要がありますか?
// Get User ID
$user = $facebook->getUser();
// We may or may not have this data based on whether the user is logged in.
//
// If we have a $user id here, it means we know the user is logged into
// Facebook, but we don't know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
// Login or logout url will be needed depending on current user state.
if ($user)
$logoutUrl = $facebook->getLogoutUrl();
else
$loginUrl = $facebook->getLoginUrl();
(私は多少の長さに起因し、それを固め)について思ったんだけど部分があります。彼らは
getUser()
がすべてが有効であることを意味するユーザーIDの取得を保証していないことを暗示しているように見えますが、あなたはFacebookに再度連絡しなければなりません(この例では、ユーザープロファイル情報を取得しています)。これは本当ですか?
なぜ私はコードをカットしたいのですが(この場合は不自然なバックエンドの要求)、私は必要はありませんし、私の願いのために、ユーザーごとにプロファイルを読み込む必要はありません。ユーザーがログインしている場合はFB IDが必要です。
私はそれを恐れていました。回答ありがとうございます – TheLQ
@TheLQ - 問題ありません。一部のAjaxアクションでJavaScript SDKを使用してユーザーを検証することもできます; – Lix