请考虑以下事项: ID为1的朋友处于关系状态,并且还填写了他的生日数据 ID为2的朋友也处于关系状态,并且他的生日数据也已填写
ID为1和2的用户都是朋友,如果我登录Facebook,我可以毫无问题地看到上述信息。
然后我使用Facebook SDK调用Graph API,所以我做了类似的事情:
$this->_facebook->api("/1");
对于此ID,在返回的数组中,我可以看到关系状态,生日等。
然而
$this->_facebook->api("/2");
不返回此信息,只返回绝对基础知识,例如'name','id'和'gender' - 我使用简单的print_r()语句来转储返回的数组。启动登录时,我通过'scope'参数发送权限(因此我可以看到属于ID为1的用户的信息)。
所以问题是:如果我在界面上看到两个用户的生日和重新状态,为什么我只通过api调用看到一个?
答案 0 :(得分:2)
我假设在你的例子中,用户'1'使用你的应用程序或是你的应用程序用户的朋友(假设你有相应的friends_ *权限)?
其他用户的信息将无法通过API获得 - 即使您可以通过您有权访问的其他数据推断该信息 - 通常您只能代表您应用的用户及其朋友访问数据,和隐私设置可以覆盖您可以访问的有关用户朋友的内容,即使您的用户可以在facebook.com上查看信息