广告
返回顶部
首页 > 资讯 > 后端开发 > Python >FastAPI--快速入门(1)
  • 426
分享到

FastAPI--快速入门(1)

入门快速FastAPI 2023-01-31 08:01:05 426人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

Fastapi 是一个高性能 WEB 框架,用于构建 API。主要特性:快速:非常高的性能,与 nodejs 和 Go 相当快速编码:将功能开发速度提高约 200% 至 300%更少的错误:减少约 40% 的人为错误直观:强大的编辑器支持,

Fastapi 是一个高性能 WEB 框架,用于构建 API。

主要特性:

  • 快速:非常高的性能,与 nodejsGo 相当

  • 快速编码:将功能开发速度提高约 200% 至 300%

  • 更少的错误:减少约 40% 的人为错误

  • 直观:强大的编辑器支持,自动补全无处不在,调试时间更少

  • 简易:旨在易于使用和学习,减少阅读文档的时间。

  • 简短:减少代码重复。

  • 稳健:获取可用于生产环境的代码,具有自动交互式文档

  • 基于标准:基于并完全兼容 API 的开放标准 OpenAPI 和 JSON Schema

 

官方链接:https://fastapi.tiangolo.com/

 

注意事项,因为FastAPI仅支持Python3.6+的API,所以需要再Python3.6+的环境进行学习实践!

安装依赖

FastAPI - 是一个现代的,快速(高性能)python web框架

pip3 install fastapi

uvicorn - 主要用于加载和提供应用程序的服务器.

pip3 install uvicorn

 

Hello World

main.py

import uvicorn
from fastapi import FastAPI

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=8000, reload=True, debug=True)

参数解释:

app = FastAPI() 用于实例化 FastAPI类,通常app这个变量会设置成全局的,至少在当前模块作用域有效。

@app.get("/") 是一个装饰器,在这里的作用是将普通的Python函数变成一个get请求接口 ("/")表示url是根目录主页。

 至于函数里的代码就很好理解了,定义了一个函数,然后return 了一个字典,表示接口被访问时默认会返回一个jsON格式的数据回去(当然也可以return别的数据格式,例如字符串、列表等)。

uvicorn.run(app='main:app', host="127.0.0.1", port=8000, reload=True, debug=True)

表示使用uvicorn启动当前目录下main.py这个文件里的app实例

reload=True的意思是文件内容变更后自动重启服务,便于开发调试。

 

启动程序,使用PyCharm启动,或者在命令行模式下启动

python3 main.py

 

访问首页

Http://127.0.0.1:8000/

 

效果如下:

1.png

 

 

API文档交互

http://127.0.0.1:8000/docs

你将会看到自动生成的API交互文档(由 swagger UI提供):

1.png

 

 

可选的API文档

http://127.0.0.1:8000/redoc

 

你将会看到自动生成的可选的API文档(由(provided by ReDoc提供):

1.png

 

 

 

本文参考链接:

http://www.zyiz.net/tech/detail-119883.html

https://www.jianshu.com/p/94710ed35b92

 


--结束END--

本文标题: FastAPI--快速入门(1)

本文链接: https://www.lsjlt.com/news/193705.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • FastAPI--快速入门(1)
    FastAPI 是一个高性能 Web 框架,用于构建 API。主要特性:快速:非常高的性能,与 NodeJS 和 Go 相当快速编码:将功能开发速度提高约 200% 至 300%更少的错误:减少约 40% 的人为错误直观:强大的编辑器支持,...
    99+
    2023-01-31
    入门 快速 FastAPI
  • Druid入门(1)—— 快速入门实时分析利器-Druid_0.17
    一、安装准备 本次安装的版本是截止2020.1.30最新的版本0.17.0 软件要求 需要Java 8(8u92 +)以上的版本,否则会有问题 Linux,Mac OS X或其他类似Unix的操作系统(不支持Windows) ...
    99+
    2019-09-20
    Druid入门(1)—— 快速入门实时分析利器-Druid_0.17
  • SpringBoot快速入门
    文章目录 1,SpringBoot简介1.1 SpringBoot快速入门1.1.1 开发步骤1.1.1.1 创建新模块1.1.1.2 创建 `Controller`1.1.1.3 启动服务器...
    99+
    2023-10-27
    spring boot spring java
  • ClickHouse 快速入门
            ClickHouse 是什么ClickHouse 是一个开源的面向联机分析处理(OLAP, On-L...
    99+
    2022-10-18
  • mysqlsla快速入门
    1、什么是mysqlsla? 简单的说就是分析mysql log的工具,我主要是用他来分析下mysql slow log。 2、下载 http://hackmysql.com/mysqlsl...
    99+
    2022-10-18
  • JDBC快速入门
    JDBC快速入门   详解 1.0DriverManager 功能1       功能2 2.0 connection对象   3.0 statement对象     4.0 ResultSet 遍历结果集的一个案例 ...
    99+
    2020-11-18
    JDBC快速入门
  • python 快速入门
         导入 #from dir1 import test #import dir1.test as test 列表推到: b3 =[x for x in xing if x in ming] print(b3)  li ...
    99+
    2023-01-31
    入门 快速 python
  • Python3快速入门
    Python3快速入门Python3快速入门(一)——Python简介https://blog.51cto.com/9291927/2385592Python3快速入门(二)——Python3基础https://blog.51cto.com...
    99+
    2023-01-31
    入门 快速
  • JavaScript快速入门
    目录 1.概述 2.引入方式 3.调试 4.基础语法 4.1.变量 4.2.常量 4.3.运算符 ​编辑 4.4.流程控制 4.4.1.顺序 4.4.2.判断 4.4.3.循环 4.5.对象 4.6.数组 4.7.函数 5.高级特性 1...
    99+
    2023-10-28
    javascript 前端 开发语言 原力计划
  • JDBC | JDBC快速入门
    👑 博主简介:    🥇 Java领域新星创作者    🥇 阿里云开发者社区专家博主、星级博主、技术博主 🤝 交流社区:BoBoo...
    99+
    2023-09-20
    1024程序员节 java mysql
  • SendPkt快速入门[Python]
    SendPkt快速入门作者:gashero电邮:harry.python@gmail.com原文地址:http://gashero.yeax.com/p=26项目主页:http://sendpkt.googlecode.com日期:2007...
    99+
    2023-01-31
    入门 快速 SendPkt
  • Oracle快速入门_day01
    公司目前项目使用到了Oracle数据库 本人之前接触不多 计划4天 将Oracle数据库 快速入门 并结合开发使用,Oracle与MySql语法相似度很高,要一起学的小伙伴压力不要太大 Oracle数据库简介 Oracle Database...
    99+
    2016-05-18
    Oracle快速入门_day01
  • K8s该快速入门
    这篇文章将为大家详细讲解有关K8s该快速入门,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。通过一个业务发展的故事,分享 K8s 出现的原因以及它的运作方式。...
    99+
    2022-10-19
  • python3.x 快速入门
    Edit the > 2018/6/15 11:26:53 1认识Python 人生苦短,我用python - 优雅,明确,简单 是python设计哲学 - python的设计目标之一, 是让代码具备高度的可阅读性 ...
    99+
    2023-01-31
    入门 快速
  • Python快速入门体验
    Python快速入门体验 一、环境信息1.1 硬件信息1.2 软件信息 二、Conda安装2.1 Conda介绍2.1.1 Conda简介2.1.2 Conda、Anaconda及Mini...
    99+
    2023-09-12
    人工智能 大数据 python 开发语言
  • CodeReview之reviewboard快速入门
    CodeReview是一个用于进行代码评审的工具,而Reviewboard是CodeReview的一个开源实现。下面是Reviewb...
    99+
    2023-10-08
    CodeReview
  • 如何快速入门HTML
    这篇文章主要讲解了“如何快速入门HTML”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何快速入门HTML”吧!html网页语法结构如下:   <h...
    99+
    2022-10-19
  • Python3快速入门(四)——Pyth
    一、Python包简介 1、包 Python中使用包管理模块,包通常对应一个目录,必须在目录下创建一个init.py模块,init.py模块的模块名称即为包名,Python才会将目录解析为包。init.py文件内可以定义初始化包的内容,导...
    99+
    2023-01-31
    入门 快速 Pyth
  • Python3快速入门(三)——Pyth
    一、Python3标准数据类型 Python3 中有六种标准数据类型:A、Number(数字)B、String(字符串)C、List(列表)D、Tuple(元组)E、Set(集合)F、Dictionary(字典)Python3 的六种标准...
    99+
    2023-01-31
    入门 快速 Pyth
  • Python3快速入门(二)——Pyth
    一、Python3语法基础 1、Python3编码 默认情况下,Python 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串,可以为Python源码文件指定不同的编码,如下:# -*- coding: utf-8 -...
    99+
    2023-01-31
    入门 快速 Pyth
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作