fastapi初使用,构建自己的api

文章目录

        • 1、安装
        • 2、api实现
          • 2.1、 ```app.get("/1)```
          • 2.2、```app.get("/{a})```
          • 2.3、```@app.get("/{a}+{b}")```
          • 2.4、函数和api分离
        • 3、运行


原文链接:https://wangguo.site/posts/d98bb3c9.html


fastapi 是一个基于 Python 的 API 构建框架,简单且易用!

1、安装

安装,主要分为两部分:

1)fastapipip install fastapi

2)uvicorn:pip install uvicorn。服务器端,可以用来运行fastapi的代码。

也可以一起安装pip install fastapi[all]

2、api实现

from typing import Union
from fastapi import FastAPIapp = FastAPI()@app.get("/1")
def read_root():return ("hello")
2.1、 app.get("/1)

api路径引入,也就是用 1 调用 read_root函数,最终返回一个 hello。

2.2、app.get("/{a})
@app.get("/{a}")
def read_root(a:int):return ("hello")

也可以输入值,当输入一个int型参数,调用 read_root函数,返回一个 hello。

2.3、@app.get("/{a}+{b}")
@app.get("/{a}+{b}")
def read_root(a:int,b:int):return (a+b)

实现一个a+b的API。

2.4、函数和api分离

不可能把所有的api函数都放在一个.py文件中,在python文件中可以通过import调用函数。

  • sum.py,定义了一个add函数,实现a+b
def add(a,b):print(a+b)return a+b
  • main.py,调用add函数
from typing import Union
from fastapi import FastAPIfrom num import addapp = FastAPI()@app.get("/{a}+{b}")
def read_root(a:int,b:int):return add(a,b)

3、运行

uvicorn main:app --reload

ok,结束!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/20546.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LLM - DataCollatorForLanguageModeling 样本生成 by transformers

目录 一.引言 二.生成样本 By API 1.样本处理样式 2.DataCollatorForLanguageModeling 2.1 样本准备 2.2 API 生成 三.生成样本 By DIY 1.样本准备 2.data_colloator 实现 3.使用自定义 data_colloator 四.总结 一.引言 前面我们讲了 Baichuan7B 的 lora 微调步骤&a…

详解sentinel使用

目录 1.概述 2.下载安装 3.应用托管 4.流量控制 4.1.流控规则 4.2.流控模式 4.2.1.直接模式 4.2.2.关联模式 4.2.3.链路模式 4.3.流控效果 4.3.1.预热 4.3.2.排队等待 5.降级 5.1.降级规则 5.2.降级策略 5.2.1.RT 5.2.2.异常比例 5.2.3.异常数 1.概述 senti…

直播 | SDS 容灾方案,让制品数据更安全

近日,腾讯 CODING WePack 制品管理系统 V1 以及腾讯 CODING DevOps 研发效能管理平台 V7 与 XSKY 星辰天合的统一数据平台 XEDP 及天合翔宇分布式存储系统完成互相兼容认证,在数据层面满足了共同客户敏捷开发的高可用建设合规要求。 联合解决方案可以帮…

【动手学深度学习】层和块

层和块 简单介绍 块:描述单个层,由多个层组成的组件或整个模型本身。使用块进行抽象的一个好处是可以将一些块组合成更大的组件,这一过程通常是递归的 简单入门 import torch from torch import nn from torch.nn import functional as F# …

【GitHub】腾讯这一款设计神器,开源了!PAG 动效组件

作为一个资深的互联网用户,我们经常会在各种产品上看到十分酷炫的动画效果。比如,短视频中有趣的虚拟场景、直播间粉丝打榜的 “火箭”、“轮船” 等等。 如今,优质的动效不仅可以使用户更容易地理解产品功能和操作方式,减少用户…

一套完全开源,支持多租户,界面配置单点的后端框架JVS

JVS的多租户体系统 在IT系统中,“租户”(tenant)通常用于指代一种多租户架构(multi-tenancy),它是一种软件架构模式,允许多个用户或组织共享相同的应用程序或系统实例,但彼此之间的…

lwip-2.1.3自带的httpd网页服务器使用教程(一)从SD卡读取网页文件并显示

概述 本教程使用的单片机是STM32F103ZE,有线网口芯片为ENC28J60。 本教程里面的网页由于需要兼容Windows XP系统的IE8浏览器,所以采用HTML 4.01编写,不使用任何前端框架。笔者使用的网页设计软件是Adobe Dreamweaver CS3。 开发板PCB文件是公…

运维小知识(一)——centos系统安装(小白入门级)

目录 1.制作系统U盘 2.安装centos系统 3.系统配置 3.1【语言】配置​编辑 3.2【软件选择】配置 3.3【安装位置】配置 3.4【主机名、root密码、网络】配置 1.制作系统U盘 首先下载软件ventoy,制作系统U盘,买个新U盘。先在笔记本电脑安装ventoy软件&a…

产品经理学习画原型(三)

1.布尔运算的使用 合并必须选择两个及以上元件 合并后: 组合: 去除顶层:

常用API学习01(Java)

Math Math是一个帮助我们用于进行数学计算的工具类。私有化的构造方法,所有方法都是静态的。 Math类的常用方法: public static int abs(int a) 获取参数绝对值 public static double cell(double a) 向上取整 public static double floor(…

全链路Python环境迁移

全链路Python环境迁移 在当前的Python环境中,安装一些库以后,如果换了一套Python环境,难道再来一次不停的pip install?当然不是。 第一步,使用pip freeze(冻结)备份当前Python库的环境 pip f…

linux 服务器之间传输文件的方式

情景:有时迁移项目,一般人就想到需要在服务器下载到win本地电脑上面,再上传到目的服务器,这样若是文件大,下载的速度都足够让你歇一天了。遇到这问题,怎么解决呢? 方法1:scp 【优点…