我知道这很简单,但是我之前没有使用过 Zend_Gdata,所以我需要一些指导。如果我的任何假设不正确,请纠正我。
我在我的域上使用 Google Apps,所以要开始,我想做一些简单的事情,比如列出域上的所有用户。
据我了解,您需要使用,Zend_Gdata_ClientLogin
而不是Zend_Gdata_AuthSub
因为我将使用Zend_Gdata_Gapps
. 这是我到目前为止所得到的:
$client = Zend_Gdata_ClientLogin::getHttpClient('admin@mydomain.com', 'password');
$gdata = new Zend_Gdata_Gapps($client, 'mydomain.com');
$users = $gdata->retrieveAllUsers();
但是,retrieveAllUsers() 抛出异常并显示此消息:
Expected response code 200, got 401 <HTML> <HEAD> <TITLE>Token invalid</TITLE> </HEAD> <BODY BGCOLOR="#FFFFFF" TEXT="#000000"> <H1>Token invalid</H1> <H2>Error 401</H2> </BODY> </HTML>
这意味着什么?我究竟做错了什么?我不知道这是否重要,但我在本地运行这个 PHP 脚本,但我的 Google Apps 在远程服务器上运行。我正在使用 Zend Framework 1.7.5 版。
更新:如果有人想知道,我在执行此操作时遇到了更多问题。我发现为了使用 Zend_Gdata,您必须在 Google Apps 的管理部分启用“Provisioning API”。我发现我只有标准(免费)版本的 Google Apps,这意味着我无法使用 Provisioning API,除非我拥有 Google Apps 的高级(付费)版本。