如何讓 FastAPI 為 Vue 3 執行 SSR?
P粉004287665
P粉004287665 2023-08-26 21:31:32
0
1
623

根據 Vue 的 SSR 文檔,可以使用 node.js 渲染應用程式並使用 Express 伺服器返回它。 FastAPI 可以做同樣的事情嗎?

或使用 Jinja2 模板或 SPA 是唯一的解決方案嗎?

問題:

  • 無 SPA:幫助進行 SEO
  • 無 SSG:會產生太多頁面。有些需要動態產生。
  • 沒有 Jinja2/Python 模板:不會建造、捆綁和提供節點模組。所有模組都必須透過遠端包 CDN 提供服務。

我有一種感覺,也許更改 Vue 3 分隔符號然後建立專案並將文件作為 Jinja2 模板提供是解決方案,但我不確定它如何與 Vue 的路由器一起使用。我知道 /dist 資料夾可以在預設路由上提供服務,然後使用一個包羅萬象的可以用來顯示確實存在的檔案。

可能的解決方案

@app.get("/", response_class=FileResponse) def read_index(request: Request): index = f"{static_folder}/index.html" return FileResponse(index) @app.get("/{catchall:path}", response_class=FileResponse) def read_index(request: Request): path = request.path_params["catchall"] file = static_folder path if os.path.exists(file): return FileResponse(file) index = f"{static_folder}/index.html" return FileResponse(index) 

問題

  • 如果有一種方法可以使用 FastAPI 和 Vue 3 進行 SSR,那是什麼?
  • 如果沒有直接的方法,如何將 Vue 內建的 /dist 與 Jinja2 範本結合提供動態頁面?

P粉004287665
P粉004287665

全部回覆 (1)
P粉282627613

有多種可用選項,例如 Nuxt.js、Quasar 和 Gridsome,它們透過 FastAPI 和 Vue 3 提供對 SSR 的支援。

    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!