我想開發一個應用程序,在那裏從多個客戶端獲取與某些事務相關的數據。現在我想使用Google Spreadsheet進行一些分析。有什麼辦法可以使用ASP.Net MVC(使用C#)來實現這一點。 Google提供了OAuth,當我執行代碼時以及何時嘗試將數據發送到我從客戶端接收到的Google電子表格中。但是,當我這樣做時,對於每個新客戶,Google都會要求提供登錄憑據。客戶端輸入他們自己的憑證,並使用Google表格而不是普通工作表,使用客戶端自己的工作表。因此,我的目的沒有解決。有沒有辦法做到這一點。我似乎也沒有在Google上找到適當的文檔。請提供一些建議來執行此操作。提前致謝。我們可以使用谷歌電子表格作爲後端數據庫
回答
這可以使用Google Apps Script完成。特別是,您可以通過Google表格中的「bound」腳本(即,在希望創建爲「後端」的工作表上下文中創建的腳本)實現此目標,然後將其發佈爲「web app」腳本。當您發佈它時,您可以使用電子表格所有者的權限(而不是調用url的用戶的權限)執行它,而不需要最終用戶明確授權自己(因爲它是腳本發佈者的憑證,而不是正在使用的用戶憑證)。
需要注意的是,雖然這個(通常建立在Google Apps腳本之上)對於中小型應用程序來說是一個合理的方法,但您可能會發現使用了Google Cloud Platform(在這種情況下, Cloud Datastore)作爲針對小型到大型應用的更好,更具擴展性的解決方案。也就是說,如果你正在製作原型或創建一個內部工具,而這個工具不可能在一夜之間着火,那麼我會採用任何你認爲更方便/更簡單的方法;如果您正在創建可能會遇到「成功災難」的應用程序,那麼我會選擇使用Cloud Platform。
我認爲這很重要,要注意Google表格有200萬個單元格的限制。 –
基於數據庫的大小,或者對錶單請求的可靠性(或可能的速率限制),是否存在可擴展性問題? 我的用例涉及向Web應用程序提供一個只讀數據庫。如果我需要我可以實現一個緩存層。 – Pirijan
@Pririjan您可能會感興趣:https://script.google.com/dashboard https://cloud.google.com/appengine/quotas https://cloud.google.com/datastore/sla https:/ /cloud.google.com/datastore/pricing –
如果你只是想要一個只讀數據庫,這可以很容易地完成。 您必須將您的Google工作表發佈到網絡,並從其網址中複製其ID。
例如我的表有這個網址:https://docs.google.com/spreadsheets/d/1IHF0mSHs1HdYpIlIzYKG3O8SnAhKU_a6nEJSz04Togk/edit
中間的長字母數字串是我的表ID。複製它,並把它而不是XXXX在以下網址如下:
https://spreadsheets.google.com/feeds/list/XXXX/1/public/basic?alt=json「
所以最終的URL看起來像這樣: https://spreadsheets.google.com/feeds/list/1IHF0mSHs1HdYpIlIzYKG3O8SnAhKU_a6nEJSz04Togk/1/public/basic?alt=json
然後,你可以簡單地訪問該網址,並得到所有的數據作爲JSON 使用jQuery:
var $url = 'https://spreadsheets.google.com/feeds/list/1IHF0mSHs1HdYpIlIzYKG3O8SnAhKU_a6nEJSz04Togk/1/public/basic?alt=json';
$.getJSON($url,function(data){
alert(JSON.stringify(data.feed.entry));
});
你會得到一個很長的JSON結構的相關數據是data.feed.entry有你有米。任何條目。在每一個你會有一個「內容」屬性,並在其中,「$ t」之一。這些會給你所有的細胞。 因此,爲了獲得第一行,您將不得不獲得data.feed.entry [0] .content。$ t。
希望它有幫助。
而不是整個文件作爲JSON對象,我們可以像SQL查詢? – Naffi
如果您的工作表是公開的,您可以在沒有身份驗證的情況下執行此操作。您可以使用google API可視化與查詢語言或使用Google Sheets API。 但是,如果您的工作表是私人的,則必須通過服務帳戶憑據使用OAuth2身份驗證。 爲了做到這一點,您必須創建一個服務帳戶(例如,擁有項目角色的所有者)。然後你必須下載client_secret.json文件,這個文件將在你的代碼中使用。 最後,您必須與您在此文件中收到的電子郵件分享您的電子表格。查看文件,你會看到它。
我做了一個教程。您可以訪問http://edba.xyz/google-sheets-as-database。它主要基於PHP,但它很容易轉移到其他語言 。
- 1. 使用谷歌電子數據表作爲數據庫
- 2. 如何使用谷歌電子表格作爲實時操作數據庫
- 3. 谷歌電子表格:表從數據
- 4. 使用谷歌API Java客戶端上傳數據庫到Google電子表格
- 5. 使用谷歌電子表格作爲核心數據對象的數據源
- 6. 獲取谷歌電子表格數據
- 7. 訪問谷歌電子表格數據
- 8. 訪問谷歌電子表格數據
- 9. 數據關係谷歌電子表格
- 10. 谷歌電子表格的JSON數據
- 11. 更新/添加數據到谷歌電子表格數據庫
- 12. 谷歌電子表格作爲數據庫的Web應用程序
- 13. 在java中使用谷歌電子表格api創建谷歌電子表格
- 14. 刪除谷歌電子表格後,爲什麼我可以通過谷歌應用腳本訪問它?
- 15. 谷歌電子表格作爲pdf電子郵件附件
- 16. cron谷歌電子表格
- 17. 谷歌javascript電子表格
- 18. ajax後/插入數據/行到谷歌電子表格
- 19. 使用谷歌電子表格刮研究Instagram數據?
- 20. 使用谷歌腳本刪除電子表格數據
- 21. 谷歌電子表格電子郵件
- 22. 我可以使用一個谷歌腳本到多個電子表格
- 23. 是否可以從谷歌電子表格填充谷歌表單?
- 24. 把HTML表格數據放在谷歌電子表格
- 25. PHP表格數據到谷歌電子表格
- 26. 從HTML表格發送數據到谷歌電子表格
- 27. 函數importxml谷歌電子表格
- 28. 寫在谷歌電子表格數組
- 29. 使用電子表格API作爲雲數據庫
- 30. 谷歌工作表複製行,以不同的電子表格
相關:http://stackoverflow.com/questions/5037223/using-google-docs-as-a-database –
相關:http://stackoverflow.com/questions/6270210/authenticating-and-using-a -google-spreadsheet-as-a-database-for-a-web-app –
是的,你可以,我在網上找到這個 – ziaullahzia