You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FastAPI与Python requests调用出现422 Unprocessable Entity错误求解决

解决FastAPI接口422 Unprocessable Entity错误

你的测试代码存在两个关键问题,导致接口返回422错误,修正后即可正常调用:

问题1:请求头拼写错误

你写的ContentType不符合HTTP标准,正确的请求头键名应为Content-Type,拼写错误会让FastAPI无法识别请求的内容格式。

问题2:数据传递格式不匹配

使用requests.post的data参数传递字典时,requests会默认将数据编码为application/x-www-form-urlencoded格式的表单数据,但你的FastAPI接口通过Data模型接收的是JSON格式数据,两者格式不匹配。

另外,无需手动对event["name"]执行encode("utf-8")操作,json参数会自动处理UTF-8编码。


修改后的测试代码

import requests
import json

mode = "DEV"
dev_server = "http://127.0.0.1:8000"

with open("data/data.json", "r") as f:
    events = json.load(f)

for event in events: 
    if mode == "DEV":
        requests.post(
            dev_server + "/event", 
            headers={"Content-Type": "application/json"}, 
            json={"name": event["name"]}
        )

额外验证方式

你可以直接访问FastAPI自动生成的文档页面http://127.0.0.1:8000/docs,在页面内直接测试/event接口,先确认接口本身功能正常,再调试测试代码。

内容的提问来源于stack exchange,提问作者Jack Gee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 00:44:59