Python高性能web框架-FastApi教程:(1)创建一个简单的FastApi

(1)创建一个简单的FastApi

1. 导入必要的库
python 复制代码
from fastapi import FastAPI
import uvicorn
  • FastAPI 是一个用于构建现代、快速(高性能)的Web API的Python框架。
  • uvicorn 是一个ASGI服务器,用于运行异步的Python Web应用程序。
2. 创建FastAPI实例
python 复制代码
app = FastAPI()
  • 这行代码创建了一个FastAPI应用实例,这个实例将用于定义和处理路由。
3. 定义路由
python 复制代码
@app.get('/')
async def home():
    return {'user_id': 1002}
  • @app.get('/') 是一个装饰器,用于定义一个GET请求的路由,路径为根目录/
  • async def home(): 定义了一个异步函数home,当接收到根目录/的GET请求时,这个函数将被调用。
  • return {'user_id': 1002} 返回一个包含用户ID的字典。
python 复制代码
@app.get('/shop')
async def shop():
    return {'shop': '商品信息'}
  • @app.get('/shop') 是一个装饰器,用于定义一个GET请求的路由,路径为/shop
  • async def shop(): 定义了一个异步函数shop,当接收到/shop的GET请求时,这个函数将被调用。
  • return {'shop': '商品信息'} 返回一个包含店铺信息的字典。
4. 运行FastAPI应用
python 复制代码
if __name__ == '__main__':
    uvicorn.run('main:app', port=8080, reload=True)
  • if __name__ == '__main__': 检查是否直接运行此脚本。
  • uvicorn.run('01_quickstart:app', port=8080, reload=True) 使用uvicorn运行FastAPI应用,指定端口为8080,并启用自动重新加载功能。这样在开发过程中,代码修改后会自动重启服务器。

通过以上步骤,你可以创建一个简单的FastAPI应用,并定义两个GET请求的路由来返回不同的数据。

5.完成代码如下
python 复制代码
from fastapi import FastAPI
import uvicorn

app = FastAPI()

@app.get('/')
async def home():
    return {'user_id': 1002}

@app.get('/shop')
async def shop():
    return {'shop': '商品信息'} 

if __name__ == '__main__': 
    uvicorn.run('main:app', port=8080, reload=True)
6.测试

FastAPI自带swagger接口调试文档,因此这里可以直接打开swagger页面 127.0.0.1:8080/docs,然后即可调试了,如下:

swagger测试录屏

相关推荐
程序猿000001号25 分钟前
使用Python的Turtle库绘制图形:初学者指南
开发语言·python
西猫雷婶1 小时前
python学opencv|读取图像(十一)彩色图像转灰度图的两种办法
开发语言·人工智能·python·opencv·计算机视觉
程序员黄同学1 小时前
如何使用 Python 读取文本文件?
开发语言·python
珂朵莉MM1 小时前
第六届全球校园人工智能算法精英大赛-算法巅峰专项赛(系列文章)-- 开篇
java·人工智能·python·算法·职场和发展
油泼辣子多加1 小时前
【计算机视觉】边缘检测
人工智能·python·计算机视觉
灵封~1 小时前
Python机器视觉的学习
python·学习·计算机视觉
虚假程序设计1 小时前
python在纯文本程序里面藏一张图
开发语言·python
NiNg_1_2341 小时前
Python中PyTorch详解
开发语言·pytorch·python
web安全工具库2 小时前
探索 Python 中的字典:序列解包与复杂数据结构
前端·数据库·python
GOTXX2 小时前
基于OpenCV的道路损伤识别
图像处理·人工智能·python·opencv·目标检测·机器学习·计算机视觉