これは簡単だが、以前はZend_Gdataを使用していなかったので、いくつかのガイダンスが必要です。私の前提のどれかが間違っている場合は、私を修正してください。Zend Framework:Zend_Gdata_ClientLoginを使い始める
私は自分のドメインでGoogle Appsを使用していますので、まずはドメインのすべてのユーザーをリストするような簡単な操作をしたいと思います。
Zend_Gdata_Gapps
で作業しているので、私が理解している通り、Zend_Gdata_AuthSub
の代わりにZend_Gdata_ClientLogin
を使用する必要があります。これは私がこれまで持っているものです:
$client = Zend_Gdata_ClientLogin::getHttpClient('[email protected]', '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の管理セクションで「プロビジョニングAPI」を有効にしていることがわかりました。私はGoogle Appsの標準(無料)バージョンしか持っていないことを知りました。これは、Google Appsのプレミアム(有料)バージョンを使用していない限り、Provisioning APIが利用できないことを意味します。
私はこれについて混乱しています。ドキュメント(間違っている可能性があります)はオプションです: "オプションの3番目のパラメータは、Google Dataサービスの名前です...デフォルトは" xapi "で、Google Dataサーバーは汎用サービス名として認識されます。 – Andrew
正確に。あなたは "汎用サービス"にアクセスしようとしていない、あなたはAppsにアクセスしようとしている。 – vartec
よろしく!はい。私はこれを試してみる。ありがとう! – Andrew