获取Facebook详细信息

时间:2009-11-12 13:46:38

标签: facebook

如果我已经知道他的脸书ID,我如何获得facebook用户的信息,如姓名,国家等,而无需使用fb connect等登录?

我的意思是我可以使用php facebook客户端获取这些详细信息而不提示登录,如果我已经知道facebook id了吗?

提前致谢:)

2 个答案:

答案 0 :(得分:3)

除非信息所属的人公开该信息(几乎没有人),否则您无法仅通过脸书ID获取该信息。

我看到的唯一解决方案是向您的用户询问扩展权限“offline_access”。 据我所知,你只能在facebook应用程序或Facebook Connect javascript库中执行此操作(例如,不能使用PHP库)。

这意味着您必须要求用户通过fb登录facebook:连接atleast一次,请求离线访问并将facebook sessionKey存储在本地数据库中。 由于您现在有离线访问权限,因此facebook sessionKey不会过期,您可以在没有用户在场的情况下登录服务器端。

这是我在获得永久会话后实现php服务器端的方式:

$this->fb = new Facebook($settings["api_key"], $settings["secret"], false, true);
$this->fb->user = $facebookUserId;
$this->fb->api_client->session_key = $sessionKey;
$this->fb->api_client->set_user($facebookUserId);

答案 1 :(得分:0)

获取私人用户信息的唯一方法是,如果您有一个应用程序,并且该用户已授予其访问权限。然后,您可以使用FQL查询获取任何数据。

$facebook->api_client->fql_query(
      "SELECT first_name, last_name, location
        FROM user
        WHERE uid={$userid}, 
        AND is_app_user;"
    );