当前位置: 首页 > wzjs >正文

网站建设税点成都专业网站推广公司

网站建设税点,成都专业网站推广公司,如何做网站布局优化,做网站需要什么知识FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…

FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6+。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的 FastAPI 应用的各个步骤。

一、前置准备

在开始之前,请确保你已经安装了 Python 3.7+(推荐 3.7+ 以获得更好的类型提示支持)和一个代码编辑器(如 VS Code 或 PyCharm)。强烈建议使用虚拟环境来隔离项目依赖。

创建虚拟环境

python -m venv .venv

激活虚拟环境

  • macOS/Linux:
  source .venv/bin/activate
  • Windows:
  .venv\Scripts\activate

激活虚拟环境后,终端提示符前会显示虚拟环境的名称(通常是 .venv)。

二、安装 FastAPI 和 ASGI 服务器

FastAPI 本身是一个框架,需要一个 ASGI 服务器来运行它。常用的 ASGI 服务器有 Uvicorn 和 Hypercorn。我们通常选择 Uvicorn,因为它高性能且易于使用。

pip install fastapi uvicorn[standard]
  • fastapi:安装 FastAPI 框架本身。
  • uvicorn[standard]:安装 Uvicorn ASGI 服务器,[standard] 选项会安装一些常用的可选依赖。

三、创建第一个 FastAPI 应用

创建一个名为 main.py 的文件,并输入以下代码:

from fastapi import FastAPIapp = FastAPI()@app.get("/")
async def read_root():return {"Hello": "World"}

运行应用

打开终端,进入到 main.py 文件所在的目录,并确保虚拟环境已激活。然后运行 Uvicorn:

uvicorn main:app --reload
  • main:指代 main.py 文件(模块)。
  • app:指代在 main.py 文件中创建的 FastAPI() 实例对象。
  • --reload:开启热重载模式。当你修改代码并保存后,Uvicorn 会自动重启服务器,方便开发调试。

运行成功后,你将看到类似以下的输出:

INFO:     Will watch for changes in these directories: ['/path/to/your/project']
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [PID]
INFO:     Started server running on http://127.0.0.1:8000

现在,打开浏览器访问 http://127.0.0.1:8000,你会看到 JSON 响应:{"Hello": "World"}

四、自动生成的 API 文档

FastAPI 最酷的特性之一是自动生成 API 文档。在服务器运行状态下,访问以下地址:

  • Swagger UI:http://127.0.0.1:8000/docs
  • ReDoc:http://127.0.0.1:8000/redoc

你会看到交互式的 API 文档界面,可以直接在里面测试你的 API 端点。

五、处理路径参数和查询参数

路径参数

@app.get("/items/{item_id}")
async def read_item(item_id: int):return {"item_id": item_id}

访问 http://127.0.0.1:8000/items/5,你会看到:{"item_id": 5}

查询参数

@app.get("/items/")
async def read_items(skip: int = 0, limit: int = 10):return {"skip": skip, "limit": limit}

访问 http://127.0.0.1:8000/items/?skip=0&limit=10,你会看到:{"skip": 0, "limit": 10}

六、定义请求体

使用 Pydantic 定义请求体模型:

from pydantic import BaseModelclass Item(BaseModel):name: strdescription: str = Noneprice: floattax: float = None

定义一个 POST 请求,接收一个 Item 对象作为请求体:

@app.post("/items/")
async def create_item(item: Item):return item

FastAPI 会自动将请求体(通常是 JSON)解析并验证。如果数据格式或类型不匹配 Item 模型,FastAPI 会返回 422 Unprocessable Entity 错误。

七、依赖注入

使用 Depends 添加依赖注入:

from fastapi import Dependsdef get_common_parameters(q: str = None, skip: int = 0, limit: int = 10):return {"q": q, "skip": skip, "limit": limit}@app.get("/items_with_dependency/")
async def read_items_with_dependency(commons: dict = Depends(get_common_parameters)):return commons

Depends 告诉 FastAPI,路径操作函数需要一个依赖,这个依赖可以通过调用 get_common_parameters 函数来获取。

八、下一步学习建议

  1. 实践:尝试基于本教程的例子,自己写一些带有不同路径、查询参数、请求体和响应模型的 API。
  2. 官方文档:FastAPI 的官方文档(https://fastapi.tiangolo.com/zh/,有中文版)非常详细和全面,是深入学习的最佳资源。
  3. 构建更复杂的应用:学习如何使用 APIRouter 组织代码,如何集成数据库(如 SQLAlchemy 或 ORM),如何实现用户认证等。

希望本教程能帮助你快速上手 FastAPI,并感受到它的强大魅力!

http://www.dtcms.com/wzjs/321971.html

相关文章:

  • 安阳网站制作价格网站收录量是什么意思
  • 做写手一般上什么网站免费网站注册平台
  • 网站制作套餐百度竞价代运营
  • 网站信息发布制度建设二十条优化疫情措施
  • 实验报告网站建设与网页制作大连谷歌seo
  • 做网站 找风投seo裤子的关键词首页排名有哪些
  • 潍坊网站建设排行南京百度关键字优化价格
  • 广州知名网站建设网页设计服务服务营销7p理论
  • 江苏省住房和城乡建设厅网站首页网站推广交换链接
  • 餐饮网站开发毕业设计模板常州seo建站
  • 上海门户网站建设站长工具 seo查询
  • 丑陋网站设计赏析windows优化软件哪个好
  • 网站建设分类方案游戏推广对接平台
  • 建行信用卡网站登录在线生成网页网站
  • 十大顶级咨询公司西安seo报价
  • 淮北公司做网站免费制作小程序平台
  • 深圳高端网站制作网络推广哪家好
  • 主机网站搜索引擎优化的核心是
  • 一个网站可以做多少地区词广告推广 精准引流
  • 自己做网站要服务器吗网站域名注册
  • 打开网站弹出qq对话框企业网络推广服务
  • 哪个网站财经做的最好seo怎么读
  • php动态网站开发网易云课堂外贸企业网站设计公司
  • 飞阳建设网站孝感seo
  • axure做网站教学视频世界足球排名前100名
  • 网站建设服务哪便宜seo网站排名助手
  • wordpress做电影网站友情链接吧
  • 湖州医院网站建设方案产品推广的目的和意义
  • 关于做网站的调查问卷北京网讯百度科技有限公司
  • 网站建设推广注册公司百度官网认证免费