您可以使用 javascript SDK 并检查登录状态以查看他们是否已授权您的应用程序。如果有,您可以在其他地方使用 javascript 重定向或拨打您需要的电话。如果他们没有,那么您可以在您的页面上显示号召性用语。就像是:
FB.getLoginStatus(function(response){
if(!response.authResponse){
// redirect to authorization page
top.location.href="http://www.facebook.com/dialog/oauth?client_id=appid&redirect_uri=http://facebook.com/somefanpage";
// or instead show a call to action div
} else {
//load fan page specific content
}
});
但这只会告诉您他们当前是否已登录并通过您的应用程序进行身份验证。您能够判断这是返回用户还是全新用户的唯一方法是 Facebook 是否像 ifaour 提到的那样通过 signed_request 中的 userId 发送(然后您可以使用您的应用访问令牌调用 /userId/permissions 或查找在您的数据库中),但 Facebook 很可能不会发送 userId,因为您的用户可能没有使用您的个人标签应用程序进行身份验证,而是使用不同的共享应用程序密钥。