適用於 Openclaw 的 FastAPI + Flask 混合代理

一個用於部署和管理以 FastAPI 後端和 Flask 前端服務為特色的混合架構的綜合技能。

hunwenpinghao
v1.0.0
Mar 31, 2026
0
828
0

安裝與下載

1. ClawHub CLI

從來源直接安裝技能的最快方式。

npx clawhub@latest install fastapi-flask-proxy

2. 手動安裝

將技能資料夾複製到以下位置之一

全域模式
~/.openclaw/skills/
工作區
<project>/skills/

優先級:工作區 > 本地 > 內建

3. 提示詞安裝

將此提示詞複製到 OpenClaw 即可自動安裝。

請幫我使用 Clawhub 安裝 fastapi-flask-proxy。如果尚未安裝 Clawhub,請先安裝(npm i -g clawhub)。

想要直接下載?

取得包含原生技能檔案的ZIP壓縮檔。

什麼是 FastAPI + Flask 混合代理?

FastAPI + Flask 混合代理技能為需要結合 FastAPI 的高效能非同步能力與 Flask 的靈活性開發者提供了一種穩健的架構模式。本 Openclaw Skills 指南解決了同時執行多個 Python Web 框架時的常見陷阱,例如連接埠衝突、跨域資源共享 (CORS) 問題以及路由註冊錯誤。

透過實作結構化的代理模式,該技能確保了前端和後端的無縫通訊。它提供了透過統一閘道處理 RESTful 方法 (GET, POST, PUT, DELETE) 的模板,非常適合現代 AI Agent 開發,在這種開發中,多種服務層是很常見的。

FastAPI + Flask 混合代理 應用場景

  • 在現有的 Flask 前端旁執行現代 FastAPI 微服務。
  • 透過使用 Flask 作為 FastAPI 路由的反向代理來避免 CORS 問題。
  • 建構需要 UI 和高速資料處理獨立服務層的 AI 驅動型 Web 應用。
  • 使用 Docker Compose 部署多容器 Python 應用。

FastAPI + Flask 混合代理 運作原理

  1. 使用者瀏覽器連線到指定連接埠(例如 15000)上的 Flask 應用以取得靜態頁面和 UI 元件。
  2. 當發起 API 請求時,Flask 應用充當閘道,透過專用代理路由攔截請求。
  3. 代理層將請求轉發到在不同連接埠(例如 18000)上執行的內部 FastAPI 服務。
  4. FastAPI 處理業務邏輯和資料庫互動 (SQLAlchemy/ORMs) 並返回資料。
  5. Flask 接收來自 FastAPI 的回應並將其交付回客戶端,保持一致的 Header 和狀態碼。

FastAPI + Flask 混合代理 設定指南

要實作此 Openclaw Skills 解決方案,請確保已安裝 python3。

  1. 在主執行區塊之前定義帶有路由的 FastAPI 應用:
from fastapi import FastAPI
app = FastAPI()

@app.get("/api/hello")
def hello():
    return {"message": "Hello"}
  1. 設定 Flask 代理以將請求轉發到 FastAPI 後端:
# 安裝依賴
pip install flask fastapi uvicorn requests sqlalchemy
  1. 使用啟動腳本執行兩個服務:
#!/bin/bash
# 在背景執行 FastAPI
python -m uvicorn api:app --host 0.0.0.0 --port 18000 &
# 執行 Flask 前端
python frontend.py

FastAPI + Flask 混合代理 資料結構與分類體系

該技能建議使用 SQLAlchemy 的關聯式資料庫結構。關鍵實體包括:

資料表 用途 關係
trajectories 用於追蹤的主要資料記錄 擁有多個 annotations
annotations 連結到軌跡的詮釋資料或標籤 外鍵: trajectory_id

它支援串聯刪除策略,以在從系統中刪除記錄時保持資料完整性。

FastAPI + Flask 混合代理 進階特性

  • 通用 API 代理:動態路由來自 Flask 的所有 HTTP 方法到 FastAPI。
  • 自動化相依性管理:確保模型匯入 (Trajectory, Annotation) 處理正確,以防止 NameErrors。
  • Docker Compose 編排:預先配置的服務容器,實現無縫雲部署。
  • 資料庫串聯支援:為複雜資料結構實作資料庫級和應用層級的手動串聯刪除。

SKILL.md


加載中

Openclaw 相關技能

METADATA

Github Stars: 0
forks: 0

精選*