介紹
在本指南中,我們將引導您完成使用 FastAPI 框架將金鑰驗證整合到 Python Web 應用程式中的過程。此實作利用 Corbado 的密鑰優先 web-js 包,該包簡化了與密鑰後端的整合。在本教程結束時,您將擁有一個可運行的 FastAPI 應用程序,該應用程式具有基於密碼的身份驗證。
在這裡閱讀完整的原始教學
FastAPI 金鑰整合的先決條件
要學習本教學課程,您應該對 Python、FastAPI、HTML 和 JavaScript 有基本的了解。
此外,您需要一個 Corbado 帳戶才能使用金鑰服務。讓我們開始吧!
FastAPI 金鑰項目結構
您的 FastAPI 專案將包含幾個關鍵檔案。重要的包括:
設定您的 Corbado 帳戶
開始編碼之前,請先設定一個 Corbado 帳戶。這將允許您存取他們的密鑰服務。請依照以下步驟操作:
- 註冊:在 Corbado 開發者面板上註冊。
- 建立專案:為您的專案命名並在設定過程中選擇「Corbado Complete」。
- 環境設定: 選擇「DEV」作為您的環境,選擇「Web 應用程式」作為應用程式類型。
- 會話管理: 選擇「Corbado 會話管理」來處理金鑰驗證和會話管理。
- 前端框架: 選擇「Vanilla JS」作為您的前端框架。
- 設定: 設定您的應用程式 URL(例如,http://localhost:8000)和依賴方 ID(例如,localhost)。
設定後,您將收到 HTML/JavaScript 片段,您將把它們整合到 FastAPI 專案中。
初始化 FastAPI 項目
如果尚未建立 main.py 文件,請先建立它。使用以下命令安裝 FastAPI 和其他必要的軟體包:
您的 main.py 將處理應用程式邏輯,包括設定路由和管理會話。
配置環境變數
在專案的根目錄中,建立一個 .env 檔案來儲存環境變數:
使用 python-dotenv 將這些變數載入到您的應用程式中:
使用會話管理建立 HTML 模板
接下來,設定您的 HTML 範本。在 templates/ 目錄中,建立 login.html 和 profile.html。其中將包括整合 Corbado 身份驗證元件所需的 JavaScript。
這是 login.html 的基本結構:
對於 profile.html,包含顯示使用者資料的元素和登出按鈕:
設定 FastAPI 控制器
您的控制器邏輯將駐留在 main.py 檔案中。該文件將管理登入和個人資料頁面的路由。登入路由將簡單地將 PROJECT_ID 注入到範本中,而設定檔路由將驗證會話並使用 Corbado 的 Python SDK 取得使用者資料。
範例 main.py:
運行 FastAPI 應用程式
最後,要執行 FastAPI 應用程序,請安裝 Uvicorn:
然後,啟動你的伺服器:
在瀏覽器中造訪 http://localhost:8000 以查看正在執行的 UI 元件。
結論
本教學示範如何使用 Corbado 的 web-js 套件將金鑰驗證整合到 FastAPI 應用程式中。此設定提供了安全且現代化的身份驗證方法,同時也無縫管理使用者會話。有關擴展此實現或與現有應用程式整合的更多詳細信息,請參閱 Corbado 文件。
以上是如何在 Python 中整合金鑰 (FastAPI)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

要在有限的時間內最大化學習Python的效率,可以使用Python的datetime、time和schedule模塊。 1.datetime模塊用於記錄和規劃學習時間。 2.time模塊幫助設置學習和休息時間。 3.schedule模塊自動化安排每週學習任務。

Python在遊戲和GUI開發中表現出色。 1)遊戲開發使用Pygame,提供繪圖、音頻等功能,適合創建2D遊戲。 2)GUI開發可選擇Tkinter或PyQt,Tkinter簡單易用,PyQt功能豐富,適合專業開發。

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。Python以简洁和强大的生态系统著称,C 则以高性能和底层控制能力闻名。

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Dreamweaver Mac版
視覺化網頁開發工具

Dreamweaver CS6
視覺化網頁開發工具