2010-11-18 68 views
0

我想在我的應用程序(在PHP)中操縱Google Spreasheet,所以,爲此,我想在zend gdata圖書館中使用google docs api。PHP:Zend:錯誤的範圍和Google API電子表格

我走在Zend樣本文檔此代碼,但我得到一個錯誤500:

$_SESSION['docsSampleSessionToken'] = Zend_Gdata_AuthSub::getAuthSubSessionToken($_GET['token']); 
$client = Zend_Gdata_AuthSub::getHttpClient($_SESSION['docsSampleSessionToken']); 
$gdClient = new Zend_Gdata_Spreadsheets($client); 
$feed = $gdClient->getSpreadsheetFeed(); 
$currKey = explode('/', $feed->entries[0]->id->text); 
$query = new Zend_Gdata_Spreadsheets_DocumentQuery(); 
$query->setSpreadsheetKey($currKey); 
$feed = $gdClient->getWorksheetFeed($query); 

當我刪除此行,一切優秀的工作:

$feed = $gdClient->getWorksheetFeed($query); 

我的錯誤是「錯誤的範圍「並且在驗證過程中我的範圍是http://spreadsheets.google.com/feeds/spreadsheets/(如樣本)。

如何解決此錯誤?

回答

2

我發現我的錯誤,並且當您想要更新單元格時,我在Zend librairy 1.11中發現錯誤。

所以我的第一個錯誤是我把這個範圍:

http://spreadsheets.google.com/feeds/spreadsheets/

而好範圍是:

http://spreadsheets.google.com/feeds/

而且更新錯誤單元格是Zend公司發出PUT請求http在https協議中工作在不安全的範圍內,所以Google不希望這樣做。

對於我的測試(這不是一個很好的解決方案,但對於一個測試,它的確定^^),我加入這一行的認沽函數的文件的Zend/GDATA/App.php在:

$requestData['url'] = str_replace('https', 'http', $requestData['url']); 

它的工作:)

相關問題