duanmianhong4893 2014-01-01 21:13
浏览 20
已采纳

Zend Framework 2 ZendOAuth与Google合作

I'm semi-familiar with the ZendFramework/ZendOAuth library found here https://github.com/zendframework/ZendOAuth

I am able to use it no problem with Twitter, but I can't figure out how to get it to work with Google OAuth 2.0. The code I'm trying to use is as follows:

$config = array(
        'callbackUrl' => 'https://www.example.com/callback',
        'siteUrl' => 'https://accounts.google.com/o/oauth2',
        'userAuthorizationUrl' => 'https://accounts.google.com/o/oauth2/auth',
        'requestTokenUrl' => 'https://accounts.google.com/o/oauth2/token',
        'consumerKey' => 'MY-CONSUMER-KEY-HERE',
        'consumerSecret' => 'MY-SECRET-KEY-HERE',
        'version' => '2.0',
    );

    $scopes = array(
        'https://www.googleapis.com/oauth2/v2/userinfo'
    );

    $consumer = new Consumer($config);
    $token = $consumer->getRequestToken(array('scope' => implode('', $scopes), 'response_type' => 'code', 'redirect_uri' => 'https://www.example.com/callback'));
    $consumer->redirect();

According to the documentation for ZendOAuth, an array in the getRequestToken function gets treated as custom OAuth parameters. However, when I run this code I get redirected to a Google page that says:

Required parameter is missing: response_type

The URL in the browser shows the following:

https://accounts.google.com/o/oauth2/auth?oauth_token=&oauth_callback=https%3A%2F%2Fwww.example.com%2Fcallback

I've tried throwing debug statements around in the ZendOAuth library, but I can't seem to be able to find the problem.

If anyone has a solution to this, it would be much appreciated.

Thanks,

  • 写回答

1条回答 默认 最新

  • dozabt4329 2014-01-02 10:54
    关注

    I believe the ZendOAuth package only supports OAuth 1, so for OAuth 2 you'll need to find a different library. I've used https://github.com/php-loep/oauth2-client with ZF2 applications so you could start there.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。