列出PHP站点上的所有Google Apps配置文件

RAN*_*GER 5 php google-apps oauth-2.0 google-profiles-api

我正在尝试将域名的所有Google Apps用户列表添加到公共PHP网站上(无需访问该站点的访问者或进行任何操作).我对需要发生什么有一个基本的了解,但不能完全把它拼凑起来.它不会像我看起来那么难......是吗?

身份验证和授权: 我很确定它需要使用OAuth 2.0 ......但我不确定它是需要2条腿还是3条腿.我让网站的另一部分与ClientLogin一起工作,但不会引入Google Apps配置文件,只会提取用户的名字和姓氏(我需要其他个人资料字段).我已经在帐户中设置了API访问权限并将所有内容都设置好(我相信).

我找到了这个页面,它显示了如何构建一个URL请求以获取所有个人资料(当然除了PHP之外的所有语言),但是不了解如何实现它. http://code.google.com/googleapps/domain/profiles/developers_guide.html

我也试过这个例子,但是在我输入凭证后它只给了我一个401.http://gdatatips.blogspot.com/2008/11/2-legged-oauth-in-php.html

我不知道实现这一目标需要哪些框架或包含.我已经尝试过zend,OAuth.php以及其他一些引导程序......但是对于每个人正在做的事情一直迷茫.

如果有人可以通过概述帮助我:

  1. 我需要上传哪些文件/框架并包含在引导程序中
  2. 我需要使用Google凭据更新这些文件中的哪些变量
  3. 我如何将Google个人资料"检索所有个人资料"请求与PHP集成

一个ELI5(解释它就像我5)概述将非常感激......我为我的无能显然对不起,但我一直在阅读文章近一周,并没有得到任何地方.

提前感谢您提供的任何帮助.

ori*_*ori 6

好问题.

您需要按照此处的说明(实验性?)实施Google OAuth 2.0流程,因为有人()需要为您的应用授予访问Google Apps API的初始权限.步骤是:

  • 使用谷歌注册您的域名(不记得链接)
  • 将浏览器重定向/发送到身份验证网址:https://accounts.google.com/o/oauth2/auth,并附带相应的请求参数(请参阅第一个链接).您需要access_type=offline,您的范围是https://apps-apis.google.com/a/feeds/user/
  • 获取代码,然后交换refresh_token,access_token和指定access_token何时到期的值.将它们存储在数据库中
  • 每当您需要进行API调用时,请检查您的access_token是否已过期,并在必要时刷新,这是refresh_token的用途.只要您不撤消对应用程序的访问权限,refresh_token就有效.

OAuth Playground有很多帮助.祝好运.