3

我不确定标题是否合适。

让我描述一下我的想法。

我不熟悉 facebook API。
你看,我在一个网站上有这个页面。我希望这个页面只对我在 facebook 上的朋友可见。有没有办法我可以做到这一点?如果查看未登录或不是我在 Facebook 上的朋友,则发送错误 404。

4

4 回答 4

2

是的,有可能,只需通过包含获取 facebook 访问令牌和用户 facebook ID 的代码的脚本访问该页面,如果有访问令牌和 FB ID,而不是在您只想为您的朋友显示的页面上重定向用户。在该页面中,首先将获得的 facebook id 与您朋友的 id 匹配(使用 facebook api 存储在 db 中)。如果 ids 与存储的匹配,则加载您的脚本,否则将其重定向到 404 html 页面或其他要显示的 url。

于 2013-06-18T14:07:39.253 回答
0

是的,这是可能的

显而易见的方法是使用 facebook SDK 让您的朋友登录,但这需要在您的网站上主动登录。一旦他们登录,很容易查看他们是否在您的朋友列表中。

一个不太明显的方法是使用这里描述的东西 http://www.tomanthony.co.uk/blog/detect-visitor-social-networks/

但是与您的个人资料相结合,如果您在仅与朋友分享的图像上获得 ok 回复(200 状态代码),然后回电以加载另一个页面。

这 ISNT 万无一失,因为您依赖 javascript 不被篡改,但需要的用户活动较少

于 2013-06-19T21:12:37.957 回答
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 命令将其余用户重定向到任何其他页面。

如果你仍然不明白,请告诉我,我会详细说明。

于 2013-06-20T08:16:52.113 回答
0
  • 创建一个 Facebook 应用程序,转到应用程序仪表板,单击“+ 创建新应用程序”按钮。
  • 将您的网站 URL 提供给Canvas URL *
  • 现在您已准备好使用 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);
    

*有两种方法可以做到这一点。

于 2013-06-24T09:40:19.630 回答