Go Bookshelf 應用程式

Bookshelf 應用程式是一個以 Go 編寫的範例網路應用程式,用於示範如何使用各種 Google Cloud Platform 產品,包括:

  • App Engine 彈性環境
  • Cloud SQL
  • Cloud Datastore
  • Cloud Storage
  • Cloud Pub/Sub
  • Compute Engine

本教學課程將探索 Bookshelf 應用程式,並說明如何使用 GCP 提供的常用技術與服務實作應用程式的每項功能。

顯示控制項與書籍封面的 Bookshelf 應用程式螢幕擷取畫面

Bookshelf 範例應用程式儲存一系列書名。任何有權存取本應用程式的使用者,都可以將書籍新增到清單中。範例應用程式提供下列功能:

  • 使用者可以查看書藉清單。
  • 使用者可以新增或刪除清單中的書籍。
  • 使用者可以編輯書籍詳細資料。
  • 使用者可以上傳書籍的封面圖片。
  • 使用者可以使用自己的 Google 帳戶登入,查看自己新增到清單中的書籍。

目標

  • 複製或下載範例應用程式。
  • 建構應用程式並在本機電腦執行該應用程式。
  • 將應用程式部署至 App Engine。
  • 逐步完成程式碼範例。
  • 瞭解應用程式如何儲存結構化資料。
  • 瞭解應用程式如何將二進位資料儲存在 Cloud Storage。
  • 瞭解應用程式如何驗證使用者。
  • 瞭解應用程式如何建立顯示在 Google Cloud Platform 主控台中的事件記錄。
  • 瞭解應用程式如何使用 Cloud Pub/Sub 將工作傳送至背景工作站。

費用

本教學課程使用 Compute Engine 等 GCP 計費元件。

本教學課程包含數個步驟,每個步驟各有專屬的解說頁面。教學課程的最後一頁包含清除資源的操作說明,執行這項操作之後,系統就不會再向您收取使用 GCP 服務的費用。如果您決定不完成教學課程的所有步驟,請查看最後一頁的清除操作說明

事前準備

  1. 使用 GCP 主控台設定 Google Cloud Platform 專案:
    1. 建立新的 GCP 專案、建立 App Engine 應用程式,然後在該專案中啟用計費功能。
      前往 App Engine

      系統出現提示時,選取 App Engine 應用程式所在地區,然後啟用計費功能。建立 GCP 專案之後,畫面會開啟「Dashboard」(資訊主頁)

    2. 啟用Cloud Datastore, Cloud Pub/Sub, Cloud Storage JSON, Stackdriver Logging, and Google+ API。

      啟用 API

  2. 下載、安裝並初始化 Cloud SDK。
    下載 Cloud SDK
  3. 取得用於驗證 GCP 服務的本機憑證。
    gcloud auth application-default login
  4. 確認您的預設專案正確無誤。
    gcloud config list
    如果輸出內容所列的專案 ID 不是您要在本教學課程中使用的專案,請按照下列方式設定專案。
    gcloud config set project [YOUR_PROJECT_ID]
    其中,[YOUR_PROJECT_ID] 是您建立或選擇用於本教學課程的專案 ID。
  5. 複製範例存放區。

    go get -u -d github.com/GoogleCloudPlatform/golang-samples/getting-started/bookshelf/app

本教學課程假設您已熟悉 Go 程式設計語言,並且已在系統上安裝 Go

教學課程結構

Bookshelf 教學課程包含多個部分,分別說明範例應用程式如何使用各種 GCP 服務。

教學課程的結構化資料部分會說明範例應用程式如何將書籍資訊儲存在 SQL 或 NoSQL 資料庫中。

應用程式的網頁會顯示一份表單,使用者可以在這份表單中輸入書籍名稱、作者、說明與出版日期。針對輸入的每本書,應用程式會將這些資訊儲存在資料庫中,方便日後要查看或編輯時擷取。 在教學課程的這個步驟中,您可以從三種資料庫中選擇一個使用:Cloud SQL、Cloud Datastore 或 MongoDB。在您使用其中一個資料庫完成這個步驟之後,就可以繼續下一個步驟。

教學課程的 Cloud Storage 會部分說明範例應用程式如何將二進位資料儲存在 Cloud Storage 中。在應用程式的網頁中,使用者可以指定每本書的封面圖片。應用程式會將封面圖片儲存在 Cloud Storage 值區中。

教學課程的授權部分會說明應用程式如何為使用者提供登入流程。當使用者登入時,輸入的任何書籍都會與個別使用者相關聯。已登入的使用者會看到匿名使用者建立的書籍和自己的書籍。其他使用者無法查看已登入使用者所建立的書籍。

教學課程的記錄部分會說明應用程式如何寫入可在 Google Cloud Platform 主控台中查看的記錄。這類記錄可在應用程式開發期間提供診斷資訊。

教學課程的 Cloud Pub/Sub 部分會說明應用程式如何使用 Cloud Pub/Sub 將工作傳送至背景工作站。工作站會從 Google 圖書 API 收集資訊,並更新資料庫中的書籍資訊。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁