寫一隻 .gs 程式,該程式內容為 insert 一筆資料進入 Google SpreadSheets,把 .gs 程式進行部屬後,並透過 Edge、Postman 進行測試 ,藉此理解 Google Apps Script 部屬功能
- 包含 doGet(e) 或 doPost(e) 函式。
- 這個函式會傳回 HTML 服務 HtmlOutput 物件或內容服務 TextOutput 物件。
當向網路應用程式傳送
- HTTP GET Request 時,執行 doGet(e)
- HTTP POST Request 時,執行 doPost(e)
.gs Code
function doGet(e) {
return Insert(e);
}
function doPost(e) {
return Insert(e);
}
function Insert(e) {
let spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
let sheet = spreadSheet.getSheetByName("工作表1");
let now = Date();
// 使用 e.parameter 來抓傳遞進來的參數
let data = [now , e.parameter.UserName, e.parameter.Desc];
sheet.appendRow(data);
}
部屬為網頁程式
右上角有藍色 [部屬] 按鈕
點擊 [部屬] 按鈕 => 新增部屬作業
新增部屬作業 => 選擇 [網頁應用程式],之後再進行部屬就不用選擇
填寫部屬內容資訊
- 說明:預設為 [未命名],通常會自行輸入有意義的名稱
- 執行身分:[我 (OOXX@gmail.com)] 或 [存取網頁應用程式的使用者]
- 誰可以存取:[只有我自己]、[所有已登入 Google 帳戶使用者]、[所有人]
完成部署作業後,可以複製該網頁應用程式網址來使用
Edge、Postman 進行測試
網頁應用程式網址 (exec 結尾)加上問號 (?),再加上參數 UserName=使用者姓名&Desc=文字描述
https://script.google.com/macros/s/AKfycbzHzWP/exec?UserName=使用者姓名&Desc=文字描述
Edge 模擬 http get request、Postman 模擬 http post request,下方只記錄 Postman
從 Goolge SpreadSheets 內資料比對 GAS 執行項目來觀察,確定 Edge 因為發出 http get request 跑 doGet(e),Postman 發出 http post request 跑 doPost(e)







沒有留言:
張貼留言