fastapi介绍(二):运行Hello, FastAPI应用
2019-09-25 本文已影响0人
warmsirius
下面,让我们创建一个超级简单的fastapi项目。
一、创建fastapi项目
- 1、创建main.py文件
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}
如果你的代码需要用到异步async/await,使用async def,如下所示:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
async def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}
二、运行项目
- 运行服务器:
uvicorn main:app --reload
命令uvicorn main:app --reload指的是:
- main:main.py文件(
- app:app = FastAPI() 在main.py内创建的对象。
- --reload:在代码更改后重新启动服务器。 只有在开发时才使用这个参数。
三、检查项目
在你的浏览器打开网址:http://127.0.0.1:8000
你将看见json格式的响应数据:
您已经创建了一个API:
- url: / 和 / items / {item_id},两个url都可以接收HTTP请求。
- / 和 / items / {item_id} 都采用GET方式的HTTP请求方法
- / items / {item_id}包含路径参数item_id,格式为int
- / items / {item_id}还包含一个可选的参数q,格式为str
四、交互的API文档
现在进入 http://127.0.0.1:8000/docs.
你将会看见自动的交互式API文档,该文档由Swagger UI提供
五、备用API文档
现在,转到http://127.0.0.1:8000/redoc
您将看到备用自动文档(由ReDoc提供)。
六、下载API接口文档
如果你需要提供你的API接口,那么只需要一行命令,即可下载api文件,一般保存为api.json
curl -o api.json http://127.0.0.1:8000/openapi.json