赞
踩
一个用于构建 API 的现代、快速(高性能)的web框架。 特点 快速:可与 NodeJS 和 Go 并肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。 高效编码:提高功能开发速度约 200% 至 300%。 更少bug:减少约 40% 的人为(开发者)导致错误。 智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。 简单:设计的易于使用和学习,阅读文档的时间更短。 简短:使代码重复最小化。通过不同的参数声明实现丰富功能。 健壮:生产可用级别的代码。还有自动生成的交互式文档。
1.1安装
- pip install fastapi
- pip install "uvicorn[standard]"
1.2小案例
- from fastapi import FastAPI
- import uvicorn
- app = FastAPI()
-
- @app.get('/')
- async def index():
- return 'ok'
-
-
- @app.get('/test2')
- async def test2():
- return 'oktest12'
-
- if __name__ == "__main__":
- uvicorn.run(app="main:app", reload=True, debug=True,host="localhost",port=5001)
uvicorn main:app 命令含义如下: main:main.py 文件(一个 Python "模块")。 app:在 main.py 文件中通过 app = FastAPI() 创建的对象。 --reload:让服务器在更新代码后重新启动。仅在开发时使用该选项。
1.3运行
python main.py
1.4查看文档
http://127.0.0.1:8000/docs
1.5返回json
- from fastapi import FastAPI
- from fastapi.responses import JSONResponse
- import uvicorn
- app = FastAPI()
-
-
- @app.api_route('/test',methods=['GET','POST','PUT'])
- def test():
- return JSONResponse({"code":200})
-
- if __name__ == "__main__":
- uvicorn.run(app="main:app", reload=True, debug=True,host="localhost",port=5002)
1. 安装 SQLAlchemy
pip install sqlalchemy
2.SQLAlchemy 连接 MySQL
- from sqlalchemy import create_engine
- from sqlalchemy.orm import sessionmaker
- from sqlalchemy.ext.declarative import declarative_base
-
- # 数据库连接配置
- SQLALCHEMY_DATABASE_URI = (
- "mysql+pymysql://root:123456@localhost/fastapi_db?charset=utf8mb4"
- # 用户:密码@服务器/数据库?参数
- )
-
- # 创建数据库引擎
- engine = create_engine(SQLALCHEMY_DATABASE_URI)
- # 创建数据库会话
- SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
- # 声明基类
- Base = declarative_base()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。