Good evening everyone. I'm trying to make a request to add new user to my database using FastAPI. When I try to do this through the python console app, FastAPI shows me this message:
{
'detail': [
{
'loc': ['body', 'nickname'],
'msg': 'field required',
'type': 'value_error.missing'
},
{
'loc': ['body', 'password'],
'msg': 'field required',
'type': 'value_error.missing'
},
{
'loc': ['body', 'email'],
'msg': 'field required',
'type': 'value_error.missing'
}
]
}
But when I do this request in /docs
everything is working!
Here is my pydantic model:
class GetUserModel(BaseModel):
nickname: str
password: str
email: str
class Config:
orm_mode = True
Here is my handler:
@users_router.post("/users/", status_code=200)
def add_new_user(user: GetUserModel, session: Session = Depends(get_session)):
user.password = bcrypt.hashpw(
user.password.encode(),
bcrypt.gensalt()
) # password hashing
new_user = User(**user.dict())
add(session, new_user) # adding to database
And here I'm trying to make a request:
response = requests.post(
'http://127.0.0.1:8000/users/',
data={
"nickname": "1",
"password": "1",
"email": "1"
})
print(response.json())
If you know what can be the problem, please tell me, I would really appreciate it!