Python FastAPI中发送Request请求
FastAPI是一个基于Python的现代、快速(高性能)的web框架,用于构建API。它具有简单易用的语法和自动文档生成功能,使得开发API变得更加简单和高效。在FastAPI中,我们可以使用requests
库来发送HTTP请求,并处理响应。
发送GET请求
首先,我们来看如何发送GET请求。通过requests.get()
方法可以发送一个GET请求,并获取响应内容。下面的示例演示了如何使用FastAPI发送GET请求:
import requests
url = "
response = requests.get(url)
if response.status_code == 200:
data = response.json()
for user in data:
print(user["name"])
else:
print("请求失败")
上面的代码中,我们首先定义了一个URL,该URL指向一个返回用户数据的API。然后,我们使用requests.get()
方法发送一个GET请求,并将响应存储在response
变量中。如果请求成功(即状态码为200),我们可以使用response.json()
方法将响应内容解析为JSON格式,并遍历用户数据。
发送POST请求
除了GET请求,我们还可以发送POST请求来向服务器发送数据。下面的示例演示了如何使用FastAPI发送POST请求:
import requests
url = "
data = {
"name": "John Doe",
"email": "johndoe@example.com"
}
response = requests.post(url, json=data)
if response.status_code == 201:
print("用户创建成功!")
else:
print("请求失败")
在上面的代码中,我们定义了一个URL和一个包含用户数据的字典。然后,我们使用requests.post()
方法发送一个POST请求,并将用户数据作为JSON格式的请求体发送给服务器。如果请求成功(即状态码为201),则表示用户创建成功。
错误处理
在发送请求时,我们还需要考虑错误处理。例如,如果服务器返回的状态码不是200或201,表示请求失败。下面的代码演示了如何处理错误:
import requests
url = "
response = requests.get(url)
if response.status_code == 200:
data = response.json()
for user in data:
print(user["name"])
elif response.status_code == 404:
print("请求的资源不存在")
else:
print("请求失败")
在上面的代码中,我们捕获了状态码为404的情况,打印出请求的资源不存在的提示。对于其他状态码,我们直接打印请求失败的提示。
总结
通过FastAPI和requests
库,我们可以轻松地发送HTTP请求并处理响应。无论是发送GET请求还是POST请求,都非常简单。同时,我们还可以通过错误处理来处理不同的请求结果。希望本文对你理解和使用Python FastAPI中发送请求有所帮助。
stateDiagram
[*] --> GET
GET --> [*]
[*] --> POST
POST --> [*]
[*] --> Error
Error --> [*]
pie
title 请求响应状态比例
"成功" : 80
"失败" : 20
参考资料
- [FastAPI官方文档](
- [Python requests文档](