2012-12-03 234 views
3

因此,這些示例顯示瞭如何獲取可獲取驅動器上所有電子表格的電子表格供稿。Google電子表格API v3 - 如何通過ID獲取單個電子表格

設置query.Uri的格式是什麼?如果我使用entry.SelfUrl,或者下面的代碼,我得到一個400錯誤的請求

SpreadsheetQuery query = new SpreadsheetQuery(); 
query.Uri = new Uri(string.Format("{0}/{1}", DocumentsListQuery.documentsBaseUri, entry.ResourceId)); //400 
// query.Uri = entry.SelfUri.Content; //also a 400 

我也嘗試了許多不同形式的供稿網址,而不是至少一個由單頁API文檔建議(更換該keyResourceId,這實際上返回一個空的飼料,而不是400):

https://spreadsheets.google.com/feeds/worksheets/key/private/full 

如何獲取只有一個文件?

而是我有獲取所有和查詢客戶端:

var feed = SpreadsheetFeedFor(query); 
var spreadsheet = (SpreadsheetEntry)feed.Entries.Single(e => e.SelfUri == resourceUri); 

回答

3

那麼,還有什麼比工作表的集合其他電子表格?顯然,從電子表格的角度來看,沒有任何東西是離散的 - 具有文件名的東西,並且您可以通過Docs API獲得... soo,獲取電子表格,我使用獲取給定電子表格工作表的示例代碼通過它的驅動器的ResourceId/key):

 /// <summary> 
     /// fetch a worksheet feed for a given spreadsheet 
     /// </summary> 
     /// <param name="resourceId"></param> 
     /// <returns></returns> 
     protected WorksheetFeed WorksheetsFor(string resourceId) 
     { 
      var path = "https://spreadsheets.google.com/feeds/worksheets/{0}/private/full".Substitute(resourceId); 
      WorksheetQuery query = new WorksheetQuery(path); 
      WorksheetFeed feed = SpreadsheetsService.Query(query); 
      return feed; 
     } 
+0

對任何遇到此問題的人員,僅對於Auth 2.0,路徑應該是電子表格的路徑。 – AxxieD

相關問題