我不确定标题是否合适。
让我描述一下我在想什么。
我不熟悉facebook API。
你看,我在网站上有这个页面。我希望这个页面只对我在Facebook上的朋友可见。有没有办法可以做到这一点?比如发送错误404,如果一个观看没有登录,或者不是我的朋友在Facebook上。
答案 0 :(得分:2)
是的,有可能,只需通过一个脚本访问该页面,该脚本包含获取facebook访问令牌和用户脸谱ID的代码(如果有访问令牌& FB ID比您想要仅为您的朋友显示的页面上的重定向用户。在该页面中,首先将获得的facebook id与您朋友的ID进行匹配(使用facebook api存储在db中)。如果id与存储的匹配,则加载脚本,否则将其重定向到404 html页面或其他想要显示的url。
答案 1 :(得分:0)
是的,这是可能的
显而易见的方法是使用facebook SDK让你的朋友登录,但这需要在你的网站上有效登录。一旦他们登录,就可以轻松查看他们是否在您的朋友列表中。
一种不太明显的方法是使用此处描述的内容 http://www.tomanthony.co.uk/blog/detect-visitor-social-networks/
但与您的个人资料相结合,如果您在只与朋友分享的图片上获得了正确的回复(200状态代码),那么请回电以加载另一个页面。
这个ISNT万无一失,因为你依赖javascript没有被篡改但需要用户较少的活动
答案 2 :(得分:0)
是的,这是非常有可能的。 您需要创建您的网站并将其URL添加到Facebook应用程序 (很容易创建一个Facebook应用程序,只需去Facebook开发人员并按照指示)。
创建应用后
您需要做的就是将用户重定向到OAuth对话框,该对话框会要求用户接受并添加应用程序,为您提供用户详细信息。
这是一个简单的教程https://developers.facebook.com/docs/reference/dialogs/oauth/
用户接受后,他将被重定向到您必须指定的URL(参见教程)
或者你可以这样做:
使用facebook php sdk并以这种方式访问用户信息 https://developers.facebook.com/docs/php/howto/profilewithgraphapi/
在两种方式中,您都可以获取用户详细信息,然后您可以根据您的朋友个人资料详细信息进行检查,并且仅允许与其匹配的用户,并使用header("any.url.com");
命令将其余用户重定向到任何其他页面。 PHP。
如果你仍然没有得到它,请告诉我,我会详细说明。
答案 3 :(得分:0)
现在您已准备好使用facebook API
require_once("facebook.php");
$config = array();
$config['appId'] = 'YOUR_APP_ID';
$config['secret'] = 'YOUR_APP_SECRET';
$facebook = new Facebook($config);
var_dump($facebook);
* 有两种方法可以做到这一点。