首頁 > 後端開發 > Python教學 > 如何從同一本地網路上的不同電腦存取我的 FastAPI 後端?

如何從同一本地網路上的不同電腦存取我的 FastAPI 後端?

DDD
發布: 2024-12-01 09:07:11
原創
482 人瀏覽過

How to Access My FastAPI Backend from a Different Machine on the Same Local Network?

如何從同一本地網路上的不同機器/IP 存取 FastAPI 後端?

在不同機器上運行 FastAPI 後端和 Next.js 前端時同一本地網絡,從前端訪問後端可能會遇到問題。

將主機標誌設為0.0.0.0

要允許來自不同機器的訪問,請在uvicorn 命令中將主機標誌設為0.0.0.0:

uvicorn main:app --host 0.0.0.0 --port 8000
登入後複製

這允許後端監聽該主機的所有IPv4 位址本機。

調整防火牆設定

確保防火牆允許外部存取指定連接埠。為 Python 建立入站防火牆規則,通常在允許 Python 透過防火牆進行通訊時自動新增。

調整 CORS 設定

設定 CORS 中間件以啟用跨來源請求:

origins = ['http://localhost:3000','http://192.168.178.23:3000']

app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)
登入後複製

在 JavaScript 發出 HTTP 請求

在 JavaScript在取得請求中,使用與輸入相同的網域瀏覽器的位址欄,以及後端的連接埠號碼:

fetch('http://192.168.178.23:8000/people', {...
登入後複製

在同一台電腦上本地測試時,使用帶有正確網域的fetch (例如, http://127.0.0.1:8000/people )或相對路徑(例如“/people”),當前端和後端都在相同的連接埠和IP 上運行時。如果前端的來源與後端不同,請將其新增至 CORS 設定中。

以上是如何從同一本地網路上的不同電腦存取我的 FastAPI 後端?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板