區域 ID
REGION_ID
是 Google 根據您在建立應用程式時選取的地區所指派的縮寫代碼。此代碼不對應至國家/地區或省份,即使部分區域 ID 可能與常用的國家/地區和省份代碼相似。如果是 2020 年 2 月後建立的應用程式,App Engine 網址會包含 REGION_ID.r
。如果是這段時間前建立的現有應用程式,網址可選擇是否包含地區 ID。
進一步瞭解區域 ID。
將使用者登入流程新增至使用 Firebase 驗證的網路服務。
在本指南的這一步驟中,您會更新網路服務來驗證使用者,並在使用者完成驗證後,擷取及顯示使用者自己的資訊。請注意,在這個步驟中,網站要求時間仍為全域,而非使用者專屬。
事前準備
如果您已完成本指南先前提過的所有步驟,請跳過本節。 否則,請完成下列其中一個步驟:
從建構 Python 3 應用程式開始,完成這個步驟之前的所有步驟。
如果您已經有Google Cloud 專案,接下來可以下載網路服務的複本並新增 Firebase:
新增 Firebase 驗證方法
Firebase 提供 JavaScript 方法與變數,您可用來設定網路服務的登入行為。針對此網路服務,您可以新增登出函式、設定登入 UI 的變數,以及新增使用者登入或登出時控制變更內容的函式。
如要新增驗證流程所需的行為,請將 static/script.js
檔案的目前事件監聽器方法替換為下列程式碼:
請注意,onAuthStateChanged()
方法會控制使用者登入或登出時的變更內容,並將使用者的 ID 權杖儲存為 Cookie。這個 ID 權杖是 Firebase 在使用者成功登入時自動產生的專屬權杖,伺服器會使用這個權杖驗證使用者。
更新網路服務以使用權杖
接下來,使用專屬的 Firebase ID 憑證在伺服器上驗證使用者,然後對使用者的憑證進行解密,以便將資料列印後回傳給使用者。
如要使用 Firebase ID 憑證:
擷取、驗證並解密位在
main.py
檔案的root
方法中的權杖。確認您的
requirements.txt
檔案包含所有必要的依附元件:
測試網路服務
請在虛擬環境中在本機執行網路服務,藉此進行測試:
在專案的主要目錄中執行下列指令,以安裝新的依附元件並執行網路服務。 如果您尚未設定本機測試用的虛擬環境,請參閱測試您的網路服務。
pip install -r requirements.txt python main.py
請在網路瀏覽器中輸入下列網址,以便查看網路服務:
http://localhost:8080
部署您的網路服務
現在您已在本機執行驗證,便可將網路服務重新部署至 App Engine。
您可以在 app.yaml
檔案所在的專案根目錄中執行下列指令:
gcloud app deploy
系統會自動將所有流量轉送至您部署的新版本。
如要進一步瞭解如何管理版本,請參閱管理服務和版本。
查看服務
如要快速啟動瀏覽器並前往 https://PROJECT_ID.REGION_ID.r.appspot.com
使用網路服務,請執行下列指令:
gcloud app browse
後續步驟
現在您已經設定使用者驗證,可以開始瞭解如何更新網路服務,將已驗證使用者的資料個人化。