Google APIs via NodeJS
寫在前頭
之前,實作 天龍特公地 專案時,接觸到 Google API 連到 Fusion Tables 的經驗,這篇隨手筆記存放有點久,現在才拿出來當 Blog 的新文章。 XD
想想 Fusion Tables 挺適合在小專案,但如果專案開始長大,就顯得有點不足,故 天龍特公地 即將以 PostgreSQL 為 DB,以應付越來越多擴展性功能。
Google APIs
建立專案
先到 Google Developers Console 建立新專案。
開啟 API
啟動想使用的 API ,這邊以 Google Fusion Tables APIs 為例子。
產生憑證
這邊是以 瀏覽器金鑰 為例子。
- 按下 建立新的金鑰 按鈕後,在選擇按下 瀏覽器金鑰 按鈕。
- 可以不填寫中介網址,按下 建立 按鈕,即會產生一組 API 金鑰。
- 記住這組金鑰,等等會用到。
如何練習 Google APIs?
Google APIs 琳瑯滿目,常常不知道要怎麼用,又懶得爬文,沒關係! Google 很搭心,可以直接用 APIs Expoloer 把玩每個 APIs , Try 遍每個 APis 提供的 Method。
Fusion Table
新增 Fusion Table
- Google Drive 連結 Fusion Table 。
- 在 Google Drive 建立 空白 Fusion Table 。
設定存取權限
- 將權限設定成 Public 。 ( Fusion Table API 無法操作 Private 權限)
取得 Table ID
- 按下 File -> About this table ,取得 Table ID, 當然也可以從 URL 得知 ( docid 後面一大串東西)。
NodeJS
專為 NodeJS 打造的 Google APIs Client
可以參考 Google/google-api-nodejs-client ,裡面有很完整的安裝說明及範例。
小踹 Fusion Tables Query
目的只能先 Try sql 語法,還不用動真格寫扣,可以利用 APIs Exploer 平台的 fusiontables.query.sql 來踹踹看。
- 直接就丟 SQL Script:
SELECT * FROM YOUR_TABLE_ID
,接著就 Execute 。 ( 記得把 YOUR_TABLE_ID 替換成你剛剛準備的新 Fusion Table ID )
- 執行後,可以看到花費時間、Request ,以及 Response 結果,別得不管了! 只要看到 rows 關鍵字,這裡面的東西才是我們要,另外,在看看 query? 後面一拖拉庫的東西,用了 sql 和 key 兩個參數,這是不是在告訴我們一件事,執行 API 時,記得下參數。
動手踹 共 扣
看完 Google/google-api-nodejs-client 的 README.md ,就可以抓到這工具大致用法,那就寫扣去…
1 | var google = require('googleapis'); |