FastAPI:CORS 中间件不支持 GET 方法

2024-02-14

我尝试在 FastAPI 框架上使用 CORS,但它不适用于 GET 方法

这是我正在处理的代码:


from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware

app = FastAPI()

app.add_middleware(
    CORSMiddleware,
    allow_origins=['*'],
    allow_methods=["*"],
    allow_headers=["*"],
)


@app.get("/test1")
async def test1():
    return {"message": "Hello World"}


我遇到了同样的问题,解决方案是不使用add_middelware但执行以下操作:

首次从 Starlette 导入:

from starlette.middleware import Middleware
from starlette.middleware.cors import CORSMiddleware

创建中间件:

middleware = [
    Middleware(
        CORSMiddleware,
        allow_origins=['*'],
        allow_credentials=True,
        allow_methods=['*'],
        allow_headers=['*']
    )
]

进而:

app = FastAPI(middleware=middleware)

这应该有效

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FastAPI:CORS 中间件不支持 GET 方法 的相关文章

随机推荐