2013-04-22 71 views
0

请考虑以下内容: ID为1的朋友处于关系中,并且还填写了他的生日数据 ID为2的朋友也处于恋爱关系中,并且还填写了他的生日数据从Facebook的Graph API中看到缺少的信息

身份证1和2的用户都是朋友,如果我登录到Facebook,我可以看到上述信息没有任何问题。

然后我做出使用Facebook SDK图形API的调用,所以我做类似的东西:

$this->_facebook->api("/1"); 

对于这个ID,返回数组中,我可以看到的关系状态,生日等。

然而

$this->_facebook->api("/2"); 

不返回该信息,只有绝对的基本知识,如“名称”,“ID”和“性别” - 我用一个简单的print_r()statment杜mp返回的数组。当启动登录时,我通过'范围'参数发送正确的权限(因此我可以看到属于具有ID 1的用户的信息)。

所以问题是:如果我在界面上看到两个用户的生日和rel状态,为什么我只能通过api调用看到一个?

回答

2

我假设在你的例子那里,那个用户'1'使用你的应用程序或者是你的应用程序用户的朋友(假设你有适当的friends_ *权限)?

其他用户的信息将无法通过API获得 - 即使您可以通过您有权访问的其他数据推断出该信息 - 一般而言,您只能代表应用的用户及其朋友访问数据,并且隐私设置可以覆盖您可以访问关于用户朋友的内容,即使用户可以在facebook.com上查看信息。

+0

Igy - 这是一个有趣的观点。目前我是唯一使用此应用程序的人,但尚未发布。因此ID 1和ID 2的用户正在使用该应用程序,但我仍然可以看到用户'1'的bday,这就是困扰我的东西。用户1和用户2都是我的朋友(我是使用该应用的人)。回到friends_ *权限,如果我没有正确的权限,我将不会看到用户1的详细信息,但我明白了。 – Tamas 2013-04-22 20:46:55

+0

用户还可以选择隐藏朋友使用的应用程序中的某些数据,即使这些朋友可以在facebook.com上看到数据 - 此设置目前可在隐私设置 - >应用程序 - >应用程序其他使用中找到,目前看起来像这样:http://imgur.com/d63jzmq – Igy 2013-04-22 21:12:22

+0

就是这样。我无法在自己的隐私设置中找到它。谢谢Igy,你一直在帮助! – Tamas 2013-04-22 22:27:50