简介
在编写程序的过程中,我们经常需要通过http向别人发送请求,有时也需要接收其他人发送来的请求,那么接下来我将以fastAPI为例简单介绍这一功能的实现。
基础
我们首先要安装 fastapi
和uvicorn
两个库。
pip install fastapi
pip install uvicorn
代码
我们从简单的输出hello,world开始
我们需要编写两段代码,一段用来处理接收到的请求,一段用来发送请求。
首先是接收请求的部分,主体为一个接收特定类型的数据并在处理后加以输出,app.get
中的内容用于指定发送请求时的格式,最后run
中指定地址及端口,工作进程数
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get('/test/name={name}')
def greet(name:str=None):
res = "Hello, %s!" % name
return res
uvicorn.run(app=app,
host="127.0.0.1",
port=8080,
workers=1)
接下来是发送请求的部分,在这一部分中,我们首先要构造url请求,也就是填写向哪个端口发送具体什么内容,之后用发送get
请求,最后解析返回的json数据
import requests
url = "http://127.0.0.1:8080/test/name=world"
response = requests.get(url)
if response.status_code == 200:
data = response.json()
print("返回:", data)
else:
print("请求失败,状态码:", response.status_code)
那么这样一个简单的http接口服务就搭建好了,稍微要补充的是,如果是处理多个参数,可以参照以下格式:
@app.get('/test/a={a}/b={b}')
def fun(a:str=None,b:str=None):
http://127.0.0.1:8080/test/a=a/b=b