【问题标题】:How to get google contact list using artdarek-oauth-4-laravel?如何使用 artdarek-oauth-4-laravel 获取谷歌联系人列表?
【发布时间】:2014-10-21 23:29:43
【问题描述】:

我正在使用 artdarek-oauth-4-laravel 通过 Facebook、twitter 和 google 登录我的网站。

登录部分工作正常。但我想从这些 api 中获取更多数据,比如如果用户通过 google 注册,那么我正在寻找他们的一般信息以及 google 联系人列表,或者如果用户正在从 Facebook 注册,那么我正在尝试获取/me 和 /friend-list 等。

在这里,我只是以谷歌为例。

我已经这样设置了配置

   'Google' => array(
        'client_id'     => '***********************************',
        'client_secret' => '***********************************',
        'scope'         => array('userinfo_email', 'userinfo_profile', 'https://www.google.com/m8/feeds/'),
    ),

我的控制器功能是这样的:-

   public function loginWithGoogle()
   {
       $code = Input::get( 'code' );

       $googleService = OAuth::consumer( 'Google' );
       if ( !empty( $code ) )
       {
          $token = $googleService->requestAccessToken( $code );
      //  $result = json_decode( $googleService->request( 'https://www.googleapis.com/oauth2/v1/userinfo' ), true );
          $result = json_decode( $googleService->request( 'https://www.google.com/m8/feeds/contacts/default/full' ), true );
          echo json_encode($result);

       }
       else {
         // get googleService authorization
         $url = $googleService->getAuthorizationUri();
         // return to google login url
         return Redirect::to( (string)$url );
       }
   }

此代码将我引导至 google api,并要求我在服务范围内设置的所有权限。在这里,一旦我在与 api 交换代码参数后获得了访问令牌,我正在调用 url 以返回我的联系人列表,但它失败了。我从 laravel 收到这条消息:-请求资源失败。

如果我调用注释的 $result 请求,它会返回结果。

所以,我想知道我们如何将这个库用于登录和注册以外的数据。在检索 facebook 好友列表的情况下,会发生同样的事情,但登录有效。 (我的Facebook App有权限获取好友列表)。

感谢任何帮助。

【问题讨论】:

  • 你有什么解决办法吗?对我来说 $result 实际上是 NULL。
  • 是的,问题出在我在谷歌上创建的 APP 的权限上。一旦我为应用程序分配了“联系人 API”权限(在 Google API 上从这里 console.developers.google.com),它就开始给我联系人列表。

标签: php laravel-4 oauth oauth-2.0


【解决方案1】:

查看此回复,https://stackoverflow.com/a/26488136/434790

它对我有用。罪魁祸首:alt=json 被添加到https://www.google.com/m8/feeds/contacts/default/full

【讨论】:

    猜你喜欢
    • 2014-11-02
    • 1970-01-01
    • 1970-01-01
    • 2012-08-03
    • 1970-01-01
    • 1970-01-01
    • 2011-05-16
    • 2015-07-14
    • 1970-01-01
    相关资源
    最近更新 更多