当前位置:   article > 正文

FastAPI介绍

fastapi

1.fastapi介绍

一个用于构建 API 的现代、快速(高性能)的web框架。 ​ 特点 快速:可与 NodeJS 和 Go 并肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。 高效编码:提高功能开发速度约 200% 至 300%。 更少bug:减少约 40% 的人为(开发者)导致错误。 智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。 简单:设计的易于使用和学习,阅读文档的时间更短。 简短:使代码重复最小化。通过不同的参数声明实现丰富功能。 健壮:生产可用级别的代码。还有自动生成的交互式文档。

1.1安装

  1. pip install fastapi
  2. pip install "uvicorn[standard]"

1.2小案例

  1. from fastapi import FastAPI
  2. import uvicorn
  3. app = FastAPI()
  4. @app.get('/')
  5. async def index():
  6.    return 'ok'
  7. @app.get('/test2')
  8. async def test2():
  9.    return 'oktest12'
  10. if __name__ == "__main__":
  11.    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

  1. from fastapi import FastAPI
  2. from fastapi.responses import JSONResponse
  3. import uvicorn
  4. app = FastAPI()
  5. @app.api_route('/test',methods=['GET','POST','PUT'])
  6. def test():
  7.    return JSONResponse({"code":200})
  8. if __name__ == "__main__":
  9.    uvicorn.run(app="main:app", reload=True, debug=True,host="localhost",port=5002)

2.sqlalchemy

1. 安装 SQLAlchemy

pip install sqlalchemy

2.SQLAlchemy 连接 MySQL

  1. from sqlalchemy import create_engine
  2. from sqlalchemy.orm import sessionmaker
  3. from sqlalchemy.ext.declarative import declarative_base
  4. # 数据库连接配置
  5. SQLALCHEMY_DATABASE_URI = (
  6.    "mysql+pymysql://root:123456@localhost/fastapi_db?charset=utf8mb4"
  7.    #               用户:密码@服务器/数据库?参数
  8. )
  9. # 创建数据库引擎
  10. engine = create_engine(SQLALCHEMY_DATABASE_URI)
  11. # 创建数据库会话
  12. SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
  13. # 声明基类
  14. Base = declarative_base()

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/503068
推荐阅读
相关标签
  

闽ICP备14008679号