fastapi一个简单的函数greet(*args)sdf



我有一个简单的函数,它接受任意数量的参数,如下所示:

def greet(*args):
a=list(args)
return {"greetings to  users:": a}
greet('Aron','Claus')
>>>{'greetings to  users:': ['Aron', 'Claus']}

该功能按预期工作。但是当我把路由器装饰器放在函数上时,如下所示:

@router.get("/greet")
def greet(*args):
a=list(args)
return {"greetings to  users:": a}

我在swagger端得到一个内部服务器错误,我的命令行给了我以下错误:

TypeError: greet() got an unexpected keyword argument 'args'

为什么会发生这种情况?我该如何避免这种错误。提前感谢

所以我从Fastapi文档中发现了以下内容

from typing import List, Union
from fastapi import FastAPI, Query
app = FastAPI()

@app.get("/items/")
async def read_items(q: Union[List[str], None] = Query(default=None)):
query_items = {"q": q}
return query_items

URL如下所示:http://localhost:8000/items/?q=foo&q=bar

它运行良好。

最新更新