FastApi-01-初识

简介: FastApi-01-初识

FastApi是什么


顾名思义,FastApi就是一个用于构建高性能api的web框架。


FastApi的特点


  • 快速:比肩NodeJs和Go
  • 高效:开发效率提升一倍多
  • 少BUG:减少开发错误率
  • 智能:自动补全
  • 简单:易于学习
  • 简短:代码简小精悍
  • 健壮:生产级别可用
  • 文档:自动生成交互式文档
  • 标准化:基于OpenApi


FastApi的安装


pip install fastapi[all]
复制代码


FastApi之hello world


main.py


from fastapi import FastAPI
app = FastAPI()
@app.get('/')
async def root():
    return {'message':'hello world!'}
复制代码


命令行启动


uvicorn.exe main:app --reload
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [18784] using statreload
INFO:     Started server process [23504]
INFO:     Waiting for application startup.
INFO:     Application startup complete.   
复制代码


打开 http://127.0.0.1:8000 查看效果


网络异常,图片无法展示
|


可以看到,后台程序已经成功返回。


主函数启动


from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get('/')
async def root():
    return {'message':'hello world!'}
if __name__ == "__main__":
    uvicorn.run(app='main:app',host='127.0.0.1',port=8765,reload=True,debug=True)
复制代码


启动:


python main.py
复制代码


交互式的API文档


docs


浏览器访问:127.0.0.1:8765/docs


网络异常,图片无法展示
|


展开看下接口详细信息


网络异常,图片无法展示
|


点击右侧的Try it


网络异常,图片无法展示
|


即可实现接口调试!


完美!


redoc


浏览器访问:127.0.0.1:8765/redoc


网络异常,图片无法展示
|


FastApi和Flask的区别


经常看到有人把 FastAPI 和 Flask 放到一起比较,但是却没有意识到这完全是两种东西——前者是基于 Web 框架 Starlette 添加了 Web API 功能支持的(框架之上的)框架,而后者是和 Starlette 同类的通用 Web 框架,所以他两本就不是相同的东西,所以还是不要强行比较,选择适合自己的才是正确的。


至于说FastApi使用了asyncio而使得它的性能提升很大,在我看来没有网上介绍的那么夸张。因为在gevent的加持下,其他web框架也可以做到很高的并发,况且一般的服务都是会借助中间件和集群来实现高并发的,所以对于FastApi的高性能大家还是理性看待。感兴趣的同学可以去测试看看实际的结果。


本系列主要是介绍FastApi这个新的web框架,让大家能够对它有所了解,从而合理使用。


至此,FastApi的简单介绍结束。


感谢您的阅读,别忘了关注,点赞,评论,转发四连哟!

相关文章
|
Python
python flask 后端报错 ImportError: cannot import name ‘cached_prope‘
问题python flask 后端报错 ImportError: cannot import name ‘cached_prope‘flask程序启动但抛出该错误,是因为werkzeug 版本过高,需要降低版本即可 解决:一般这种情况是需要注意第三方库版本的对应,werkzeug需要0.16.0 版本时 flask的版本应该时1.x.x 的版本,不能是2.x过高的版本。
192 0
|
网络架构 Python
FastApi-18-APIRouter
FastApi-18-APIRouter
366 0
|
4月前
|
JavaScript Shell API
FastAPI是什么?
FastAPI是一个现代、高性能的Python Web框架,专为构建API设计。它利用标准的Python类型提示,支持同步及异步编程,并借助Pydantic实现数据验证。FastAPI以卓越的性能媲美Node.js和Go,代码简洁优雅,能自动生成交互式API文档如Swagger UI和ReDoc,方便测试和调试。其对`async`和`await`的支持使之适用于WebSocket等高并发场景。快速上手仅需安装FastAPI和Uvicorn,编写少量代码即可启动服务并访问自动生成的文档界面。FastAPI不仅易于入门,还支持复杂的功能如依赖注入和后台任务,非常适合追求高性能和快速开发的项目。
|
4月前
|
JavaScript API Go
fastapi之helloworld
fastapi之helloworld
|
5月前
|
Python
|
7月前
|
安全 API Python
FastAPI入门指南
FastAPI是基于Python类型提示的高性能Web框架,用于构建现代API。它提供高性能、直观的编码体验,内置自动文档生成(支持OpenAPI)、数据验证和安全特性。安装FastAPI使用`pip install fastapi`,可选`uvicorn`作为服务器。简单示例展示如何定义路由和处理函数。通过Pydantic进行数据验证,`Depends`处理依赖。使用`uvicorn main:app --reload`启动应用。FastAPI简化API开发,适合高效构建API应用。5月更文挑战第21天
218 1
|
7月前
|
缓存 中间件 API
FastAPI
【2月更文挑战第1天】FastAPI是一个用于构建API的现代、快速的Python Web框架,具有以下特点:
140 9
|
7月前
|
Java API 数据库
FastAPI中如何调用同步函数
FastAPI中如何调用同步函数
301 0
|
JSON IDE 安全
FastAPI 是什么?快速上手指南
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建基于 Python 的 API。它是一个开源项目,基于 Starlette 和 Pydantic 库构建而成,提供了强大的功能和高效的性能。
FastAPI 是什么?快速上手指南

热门文章

最新文章