1

Google Visualization API文檔聲明使用Google Spreadsheet作爲數據源的最簡單方式是發佈它。在正常情況下,這很有效。但是我正在使用Drive API動態創建Google Spreadsheet。所以,即使我獲得授權,然後創建一個電子表格,我也不能立即使用這個數據源作爲數據源。所以我需要兩種解決方案之一:Google Visualization API通過JavaScript客戶端API將Google Spreadsheet作爲「Authenticated」數據源Auth

1)通過Drive API以編程方式「發佈」Google Spreadsheet?

2)驗證對Google Visualization API的查詢?

的代碼看起來是這樣的:

var url = 'https://spreadsheets.google.com/tq?key=' + idOfSpreadsheet + '&headers=1&pub=1'; 
var query = new google.visualization.Query(url); 
query.send(drawTable); 

你會覺得我可以追加身份驗證令牌的url varible,但我無法找到任何文件。這將是我的第一選擇。

否則,我可以發佈電子表格,但我無法找到如何從JavaScript執行此操作。目前,我必須在Google雲端硬盤用戶界面中打開新創建的電子表格並手動發佈。我不想向用戶解釋如何使用每個動態創建的電子表格來完成。

乾杯詹姆斯

回答

0

正如你所說,你可以嘗試到的OAuth 2訪問令牌追加到URL。

創建谷歌電子表格後,您可以通過執行授權查詢其元數據:

GET https://www.googleapis.com/drive/v2/files/<file_key> 

See documentation

在ILE的元數據,你會得到的可能導出格式列表:

... 
"exportLinks": { 
    "application/pdf": "https://docs.google.com/...&exportFormat=pdf", 
    "application/x-vnd.oasis.opendocument.spreadsheet": "https://docs.google.com/...exportFormat=ods", 
    "application/vnd.ms-excel": "https://docs.google.com/...&exportFormat=xls" 
}, 
... 

CSV沒有列出,因爲它只會讓你下載第一頁,但它是支持,所以你可以使用下面的網址:

https://docs.google.com/feeds/download/spreadsheets/Export?key=<file_key>&exportFormat=csv 

你要做的授權請求,但這樣你就西港島線需要附加您的身份驗證令牌是這樣的:

https://docs.google.com/feeds/download/spreadsheets/Export?key=<file_key>&exportFormat=csv&access_token=<auth_token> 

請注意,OAuth 2.0訪問令牌僅適用於1小時,因此您需要最終刷新它們。

相關問題