python系列28:fastapi部署应用

这篇具有很好参考价值的文章主要介绍了python系列28:fastapi部署应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 介绍与安装

FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,类似flask,Django,webpy
在部署时可能需要用到下面的库:

Uvicorn 或者 Hypercorn负责ASGI 服务器。
Starlette 负责 web 部分。
Pydantic 负责数据部分。

都用pip install安装即可

2. 基础

示例代码如下:

## main.py
from fastapi import FastAPI
app = FastAPI()

@app.get("/")
def read_root():
    return {"Hello": "World"}

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

如果你的代码里会出现 async / await,请使用 async def。
通过以下命令运行服务器:

uvicorn main:app --reload

或者在python里面执行:

if __name__ == '__main__':
    import uvicorn
    uvicorn.run(app="main:app", host="127.0.0.1", port=8000)

现在访问 http://127.0.0.1:8000/docs。你会看到自动生成的交互式 API 文档(由 Swagger UI生成):
python系列28:fastapi部署应用,python系列,python,fastapi,开发语言

3. Pydantic:标准Python类型提升性能

from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()

class Item(BaseModel):
    name: str
    price: float

@app.put("/items/{item_id}")
def update_item(item_id: int, item: Item):
    return {"item_name": item.name, "item_id": item_id}

使用Pydantic后的好处包括:文章来源地址https://www.toymoban.com/news/detail-802787.html

  1. 文档中parameters更详细了
  2. 可以直接在文档中输入样例,然后点击Try it out进行交互
  3. 会检查输入格式

到了这里,关于python系列28:fastapi部署应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【云原生 | Kubernetes 系列】— 部署K8S 1.28版本集群部署(基于Containerd容器运行)

    主机名 IP地址 备注 k8s-master01 192.168.0.109 master k8s-node1 192.168.0.108 node1 k8s-node2 192.168.0.107 node1 k8s-node3 192.168.0.105 node1 1、主机配置 2、升级内核 3、配置内核转发以及过滤 4、安装ipset ipvsadm,IPVS(IP Virtual Server)是一个用于负载均衡的 Linux 内核模块,它可以用来替代 kube-proxy 默认的

    2024年02月20日
    浏览(77)
  • 【Python开发】FastAPI 10:SQL 数据库操作

    在 FastAPI 中使用 SQL 数据库可以使用多个 ORM 工具,例如 SQLAlchemy、Tortoise ORM 等,类似 Java 的 Mybatis 。这些 ORM 工具可以帮助我们方便地与关系型数据库进行交互,如 MySQL 、PostgreSQL等。本篇文章将介绍如何使用 SQLAlchemy 来完成数据库操作,以便让我们在 FastAPI 项目中方便地进

    2024年02月14日
    浏览(39)
  • python三大开发框架django、 flask 和 fastapi 对比

    本文讲述了什么启发了 FastAPI 的诞生,它与其他替代框架的对比,以及从中汲取的经验。 如果不是基于前人的成果,FastAPI 将不会存在。在 FastAPI 之前,前人已经创建了许多工具 。 几年来,我一直在避免创建新框架。首先,我尝试使用许多不同的框架,插件和工具来解决

    2024年02月10日
    浏览(57)
  • 【Python开发】FastAPI 09:middleware 中间件及跨域

    FastAPI 提供了一些中间件来增强它的功能,类似于 Spring 的切面编程,中间件可以在请求处理前或处理后执行一些操作,例如记录日志、添加请求头、鉴权等,跨域也是 FastAPI 中间件的一部分。 目录 1 中间件 1.1 创建中间件 1.2 使用中间件  2 跨域 2.1 跨域详解 2.2 使用 CORSM

    2024年02月09日
    浏览(63)
  • 【AI大模型应用开发】【LangChain系列】7. LangServe:轻松将你的LangChain程序部署成服务

    大家好,我是【同学小张】。持续学习,持续干货输出,关注我,跟我一起学AI大模型技能。 LangServe 用于将 Chain 或者 Runnable 部署成一个 REST API 服务。 同时安装langserve的服务端和客户端。 只安装客户端 只安装服务端 1.1 服务端代码 从代码来看创建LangServe的重点: (1)创建

    2024年03月28日
    浏览(63)
  • Dify开源大语言模型(LLM) 应用开发平台如何使用Docker部署与远程访问

    本文主要介绍如何在Linux Ubuntu系统以Docker的方式快速部署Dify,并结合cpolar内网穿透工具实现公网远程访问本地Dify! Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你

    2024年04月10日
    浏览(45)
  • ChatGPT Plugin开发setup - Java(Spring Boot) Python(fastapi)

    记录一下快速模板,整体很简单,如果不接auth,只需要以下: 提供一个 /.well-known/ai-plugin.json 接口,返回openAI所需要的格式 提供openAPI规范的文档 CORS设置 其他的和普通的web开发类似. 本地开发就直接使用localhost即可,前几天官方localhost无法联通,最近应该修复了. 要让GPT更好理解接口

    2024年02月04日
    浏览(46)
  • 毕业设计:Vue3+FastApi+Python+Neo4j实现主题知识图谱网页应用——前言

    资源链接:https://download.csdn.net/download/m0_46573428/87796553 前言:毕业设计:Vue3+FastApi+Python+Neo4j实现主题知识图谱网页应用——前言_人工智能技术小白修炼手册的博客-CSDN博客 首页与导航:毕业设计:Vue3+FastApi+Python+Neo4j实现主题知识图谱网页应用——前端:首页与导航栏_人工智

    2024年02月14日
    浏览(47)
  • 由浅入深C系列五:使用libcurl进行基于http get/post模式的C语言交互应用开发

    大多数在linux下的开发者,都会用到curl这个命令行工具。对于进行restful api的测试等,非常方便。其实,这个工具还提供了一个C的开发库,可以很方便的在C语言开发环境下完成基于http的请求和响应交互,高效的开发基于http/smtp等的网络应用程序 下载并安装curl的开发包 开发

    2024年02月13日
    浏览(45)
  • 【华为OD机试真题 Python语言】28、全排列 | 机试真题+思路参考+代码解析

    🍂个人博客首页: KJ.JK   🍂专栏介绍: 华为OD机试真题汇总,定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用Python语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习 🎃题目描述

    2024年02月16日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包