Fastapi 简明教程
FastAPI - CORS
Cross-Origin Resource Sharing (CORS) 是当一个运行在一个客户浏览器上的前端应用程序尝试通过 JavaScript 代码与后端进行通信时的情况,并且后端处于与前端不同的“源”中。这里的源是协议、域名和端口号的组合。结果,[role="bare"] [role="bare"]http://localhost 和 [role="bare"] [role="bare"]https://localhost 具有不同的来源。
如果具有一个来源的 URL 的浏览器发送请求以执行来自另一个来源的 JavaScript 代码,则浏览器将发送一个 OPTIONS HTTP 请求。
如果后端通过发送适当的标题来授权来自这种不同来源的通信,它将允许前端中的 JavaScript 向后端发送其请求。为此,后端必须有一个“允许的来源”列表。
若要显式指定允许的来源,请导入 CORSMiddleware 并将来源列表添加到应用程序的中间件。
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
origins = [
"http://192.168.211.:8000",
"http://localhost",
"http://localhost:8080",
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
async def main():
return {"message": "Hello World"}