我正在构建一个简单的API来测试数据库。当我使用get请求时,一切正常,但如果我更改为post,我会收到“不可处理实体”错误:
以下是FastAPI代码:
from fastapi import FastAPI
app = FastAPI()
@app.post("/")
def main(user):
return user
然后,我使用javascript的请求
let axios = require('axios')
data = {
user: 'smith'
}
axios.post('http://localhost:8000', data)
.then(response => (console.log(response.url)))
也使用Python
import requests
url = 'http://127.0.0.1:8000'
data = {'user': 'Smith'}
response = requests.post(url, json=data)
print(response.text)
我还尝试解析为 json,使用 utf-8 进行解析,并更改标头。没有什么对我有用。
如果您正在使用fetch
API,但仍在获取422 Unprocessable Entity,请确保已设置Content-Type头:
fetch(someURL, {
method: "POST",
headers: {
"Content-type": "application/json"
},
body
}).then(...)
这解决了我的问题。在服务器端,我使用Pydantic模型,所以如果您不使用这些模型,请参阅上面的答案。
在我的例子中,我从不同的python项目调用python API,如下所示
queryResponse = requests.post(URL, data= query)
我在使用data属性,我将其更改为json,然后它对我有效
queryResponse = requests.post(URL, json = query)
直接来自文档:
功能参数识别如下:
因此,要创建一个接收带有用户字段的主体的POSTendpoint,您需要执行以下操作:
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Data(BaseModel):
user: str
@app.post("/")
def main(data: Data):
return data
问题内容: 我已经开发了一个Java代码,该代码使用URL和HttpUrlConnection将以下cURL转换为Java代码。卷曲是: 我已经编写了此代码,但是它始终会给HTTP代码400错误的请求。我找不到丢失的内容。 问题答案: 你的JSON不正确。代替 写 因此,JSONObject.toString()应该只为外部对象调用一次。 另一件事(可能不是你的问题,但我想提一下): 为确保不会遇
我已经写了这段代码,但它总是给HTTP代码400错误的请求。我找不到丢失的东西。
问题内容: 我正在尝试将一个对象作为JSON发送到Flask中的Web服务,该对象期望请求数据中包含JSON。 我已经通过发送JSON数据手动测试了该服务,并且工作正常。但是,当我尝试通过角度控制器发出http POST请求时,Web服务器向我发送一条消息,说它未接收到JSON。 当我检查Chrome中的请求标头时,似乎不是以JSON格式发送数据,而是通过内容类型将常规键/值对设置为applica
我在Excel中的VBA宏中使用了以下代码: 在即时窗口中,我收到了以下错误: 400 Apache Tomcat/8.0.28-错误报告1{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;}H2{font-family:Tahoma,Arial,sans-serif;颜
axios请求点击控制器上的url,但将空值设置到POJO类中,当我使用chrome中的开发人员工具时,有效负载包含数据。我做错了什么? Axios POST请求: 浏览器响应: 过帐多部分/表单数据时出错。Content-Type标头缺少边界 谁能解释一下如何设置边界或者我如何使用Axios发送表单数据。
问题内容: 我正在使用下面的代码发送http POST请求,该请求将对象发送到WCF服务。可以,但是如果我的WCF服务还需要其他参数怎么办?如何从Android客户端发送它们? 这是我到目前为止编写的代码: 问题答案: 使用POST发布参数: 你错过的部分在以下内容中,即如下。 其余的事情你都可以做到。