2011-08-02 138 views
4

我需要使用AccountManager.getAuthToken检索从Android设备(客户端)的身份验证令牌,然后通过Zend_Gdata(服务器端)通过Zend_Gdata(401未经授权)

当重新使用它从Android的AccountManager.getAuthToken使用结果使用日历 'CL' authTokenType预期工作上的事情,

Android的源:

String calendarToken = getAuthToken(account, 'cl' ... 

PHP源:

$token = // value retrieved via Android 'calendarToken' 

$client = new Zend_Gdata_HttpClient; 
$client->setClientLoginToken($token); 

$gData = new Zend_Gdata($client); 
$feed = $gData->getFeed("http://www.google.com/calendar/feeds/default/private/full"); 

这并不工作,使用Gmail的 '邮件' authTokenType事情并不那么顺利然而,当

Android的源:

String mailToken = getAuthToken(account, 'mail' ... 

PHP源:

$token = // value retrieved via Android 'mailToken' 

$client = new Zend_Gdata_HttpClient; 
$client->setClientLoginToken($token); 

$gData = new Zend_Gdata($client); 
$feed = $gData->getFeed("https://mail.google.com/mail/feed/atom/"); 

这不断抛出'Zend_Gdata_App_Htt pException“有消息”的预期响应代码200,有401

我试图按照对各种Google Data APIs准则,没有运气

回答

0

你应该看到的AuthSub请求之间的差异,以两个服务的唯一原因是一个范围问题。检查the AuthSub docs中的第三项并检查以确保您使用的令牌可以访问GMail。

相关问题