【FastAPI】P1 简单实现 a+b

目录

说明:本文通过 FastAPI 实现返回两个参数 a+b 的值;

准备工作

默认读者已准备完善 Python IDE工具以及包管理工具。

首先 ,需要安装 fastapiuvicorn 库,如果没有请使用 pip 进行安装:

bash 复制代码
pip install fastapi uvicorn

其次,需下载安装完成 Postman 软件,以用来实现参数传递功能;

Postman 下载链接:https://www.postman.com/downloads/


代码

使用 FastAPI 实现一个 POST 接口来接收两个数 ab ,并返回它们的和 resultPython 代码如下:

python 复制代码
from fastapi import FastAPI

app = FastAPI()

@app.post("/add")
async def add(a: int, b: int):
    result = a + b
    return {"result": result}

# 启动服务器
if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)

代码逐行解析如下:

python 复制代码
# FastAPI是一个类,用于创建API应用;
from fastapi import FastAPI
python 复制代码
'''
这行代码创建了一个 *FastAPI* 应用实例。
这是启动 *FastAPI* 服务的核心代码。
'''
app = FastAPI()
python 复制代码
'''
这行代码定义了一个装饰器 @app.post
它告诉 FastAPI 这个函数 add 应该响应 POST 请求。
/add是这个函数的路径。
'''
@app.post("/add")
python 复制代码
'''
第一行代码定义了一个异步函数add,异步函数使用 async def 来声明;
它接受两个参数a和b,这两个参数都是整数类型。
代码返回一个JSON响应,其中包含键result和它的值。
'''
async def add(a: int, b: int): 
	result = a + b
    return {"result": result}
python 复制代码
'''
主函数中,导入了uvicorn模块,是FastAPI中用于启动ASGI服务器的一个库。
而run代码使用uvicorn来运行前面创建的FastAPI应用实例app。
host="0.0.0.0"意味着服务器将接受所有网络接口上的连接,
port=8000指定了服务器将监听的端口号。
'''
if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)

运行

当搭建好代码后,我们通过 Postman 传递参数,接收返回值;

bash 复制代码
POST http://127.0.0.1:8000/add?a=1&b=2

学识尚浅,请多指教。

第一版:2024/1/17

相关推荐
望获linux7 分钟前
【Linux基础知识系列】第六十四篇 - 了解Linux的硬件架构
linux·运维·服务器·开发语言·数据库·操作系统·嵌入式软件
1candobetter1 小时前
JAVA后端开发——用 Spring Boot 实现定时任务
java·开发语言·spring boot
啊阿狸不会拉杆2 小时前
《Java 程序设计》第 8 章 - Java 常用核心类详解
java·开发语言·python·算法·intellij-idea
小白学大数据2 小时前
Python + Requests库爬取动态Ajax分页数据
开发语言·python·ajax·okhttp
2501_920047032 小时前
python-内存管理
开发语言·jvm·python
芜青2 小时前
JavaScript手录09-内置对象【String对象】
开发语言·javascript·ecmascript
钮钴禄·爱因斯晨2 小时前
Java 集合进阶:从 Collection 接口到迭代器的实战指南
java·开发语言
mrbone113 小时前
C++-关于协程的一些思考
开发语言·数据库·c++·c++20·协程·异步·coroutines
zgc12453673 小时前
Linux学习--C语言(指针3)
c语言·开发语言·学习
超浪的晨3 小时前
JavaWeb 入门:HTML 基础与实战详解(Java 开发者视角)
java·开发语言·前端·后端·html·个人开发