Yii-Hybridauth-如何导入facebook用户的联系人列表


Yii - Hybridauth - How to import contact list of facebook user

如何使用Yii为供应商facebook导入用户的联系人-混合身份验证。

我搜索了更多,但没有找到任何解决方案。

是否可以使用Hybridauth导入联系人。如果没有,建议我任何yii-oauth登录扩展来登录和导入facebook用户的朋友列表。

我使用Hoauth for Yii登录facebook。它确实能够导入联系人列表,尽管它没有完全文档化/实现。

进入extensions/hoauth/HOAuthAction.php,在oAuth()函数中,在$userProfile = $oAuth->profile;(身份验证后)之后,我调用$userContacts = $oAuth->adapter->getUserContacts();

我决定在用户注册时存储这个数组,所以我创建了一个名为Contacts的DB表(id、user_id、provider、identifier等-检查$userContacts数组)。然后,稍后在相同的功能中,我再次修改代码以保存联系人,如下所示:

// user was successfully logged in
// firing callback
if (sizeof($userContacts)) {
  foreach($userContacts as $contact) {
   $newcontact = new Contacts;
   $newcontact->identifier = $contact->identifier;
   // ... fill in all attributes either individually or mass
  }
  $newcontact->save();
}

注意:根据您创建facebook应用程序的时间,这可能会或无法返回您的完整好友列表。新的facebook API只会返回已经在使用你的应用程序的好友,因此不会返回完整的列表。我建议查找Facebook API 2.0功能

/受邀好友

如果你的应用程序被归类为游戏,并且它也有Canvas版本,这将起作用。旧应用程序仍然可以获得好友列表,但仅在有限的时间内,facebook将通过API v2.0 切断此访问