本篇大綱
本篇要解決的問題
之前寫了在 Firebase 上建立 Cloud Functions,大部份都要用 command line 才能完成,這幾天在看 GCP 的一些基本功能教學,發現 GCP 上也有建立 Cloud Functions 的服務,而且還有介面可以操作,對於建立、測試、刪除這些基本步驟,相較於 Firebase 要下命令,更為簡便。
本篇就是用 GCP 來建立 Cloud Functions。主要在建立、測試、刪除上。
至於觸發條件及相關程式碼的部份,以及用 Firebase 建立 Cloud Functions 的部份,都寫在了這篇:Firebase Cloud Functions 基本使用筆記。
GCP 上的 Cloud Functions 服務一樣是收費的,也一樣有在一定額度內是免費的部份,請見他們的說明:Cloud Functons 定價。
建立 Functions
在 Google Cloud Platform 上建好專案,接著選側邊導覽列中的「Cloud Functions」:

點擊後會出現一張小卡片介紹,我們點擊「建立函式」:

第一步要先填 Functions 的基本資訊,像是名稱及要部署在哪個地區,還有觸發條件:

觸發條件可參考〈Firebase Cloud Functions 基本使用筆記〉,本篇是寫用 GCP 建立的部份,就不再細寫。
這是廣告,點擊一下可以幫本站多個一點點的廣告收入,謝謝
這邊直接選用 HTTP 的方式觸發,為了之後方便測試,驗證的部份選第一個不用驗證也可以觸發(Allow unauthenticated invocations)。
都填完選完後按下「儲存」,接著按「下一步」。
下一步就跟我們用了 firebase init 後一樣,左邊會是有哪些資料夾,右邊則是檔案的預覽,在 index.js 的部份一樣會有一個預設的 helloWorld
Functions:

修改完 index.js 的檔案後,按下「部署」就會開始部署,這邊一樣留著原本的 helloWorld 來部署。
觸發的程式碼部份一樣都寫在〈Firebase Cloud Functions 基本使用筆記〉這篇,這邊不再細寫。
測試 Functions
看到我們的函式旁打了勾勾後,代表部署成功,接著我們來測試一下,點擊三個點的 icon 後再點「測試函式」:

在觸發事件的部份要填入 JSON,就當作在呼 API 要傳入的 data 一樣,我們輸入 { "message": "Hello World!" }
後,按下「測試函式」,就會看見「輸出」的部份出現了「Hello World!」,這是因為在 index.js 中最後寫的是:
res.status(200).send(message);
會回傳我們的 message
。

最後在下面紀錄的部份,也會看到回應碼是 200
,代表成功。
這是廣告,點擊一下可以幫本站多個一點點的廣告收入,謝謝
點擊「觸發條件」的頁籤,也可以看到觸發的 URL:

直接在瀏覽器上貼上網址,會看見預設 response 的 Hello World!。
刪除 Functions
刪除的部份 GCP 上比 Firbase 簡單,因為有介面可以操作。
在函式列表頁,在想要刪除的函式上,點擊右邊的三個點 icon,就會出現「刪除」的選項:

點擊後就會執行刪除的動作了。


以下是留言,但關於留言的部份必需先讓你們知道:
本站的文章都是 August 因為覺得有趣,才會實作並整理成筆記文而後進行發表。
如果留言是希望把 Demo 改成「你想要」的樣子,或是把功能改成「符合你需求」的樣子,
Sorry~ 除非那修改是 August 也有興趣的,不然不會幫你們寫程式去面對工作或是交作業。
未來這類的留言不會再主動回覆。😎
另外,公開信箱是為了讓金流驗證用,
因為之前遇過幾次回信協助解決問題後,對方卻一聲謝謝也沒有,就這樣拿去幫工作交差。
因此決定不再回覆信件,有疑問就利用留言功能囉。