2016年5月16日 星期一

[NodeJs] NodeJs Access Google Spreadsheet

這次紀錄一下怎麼使用 Node 來存取 Google 的 spreadsheet

1. 到 https://console.developers.google.com/project 並建立專案


   在創建專案的時候,google 會和你說此專案的 ID 是什麼


2. 到 API管理頁面






3. 選 Driver API 並且 enable


4. 到 Credentials,創建 key





   創建後,google 會出現一個視窗告訴你一組密碼,這個要記起來,後面會用到

   並且把下載下來的p12檔案保留好,這個之後也要拿來用

5. 下載並安裝 OpenSSL 到 Windows 上

    (1) 到 這裡 下載給 Windows 用的 binary 檔,並解壓縮

    (2)  [optional] 到 這裡 下載 conf 檔,並解壓縮到上一步的資料夾下

    (3) 將剛剛下載的 p12 檔案也放到步驟1 解壓後的資料夾下

    (4)  [optional] 如果要使用剛剛的 conf 檔,在 cmd 裡指定

         set OPENSSL_CONF=your path

    (5) 用下列指令生成 PEM 檔

         openssl pkcs12 -in download-key-file.p12 -out your-key-file.pem -nodes

6. 在你的 google driver 新創一個 spreadsheet,並共享給創建出來的 account

    ID@appspot.gserviceaccount.com

    ID 就是在步驟一所提到的專案ID


7. 安裝套件 : npm install edit-google-spreadsheer [--save]

8. 用 Node 來存取 google spreadsheet


    spreadsheetId : 可以從 spreadsheet 的 URL 拿到

    例如 : https://docs.google.com/spreadsheets/d/ID/edit#gid=0

    worksheetId: 這個一開始不知道,可以先改用 worksheetName : 'your sheet name' 

    例如 : worksheetName : 'Sheet1',那因為有開 debug,套件會告訴你 ID 是什麼

    之後就可以改回用 worksheetId

    email : 等同於步驟六所分享的 email

    keyFile : 步驟五產生的 PEM 檔案

9. 用 node 執行程式即可

參考資料 : ref1ref2ref3

沒有留言:

張貼留言