У меня есть следующая команда curl.
POST {{url}}/api/users/:id/reset-password?reset_key=b77b780972757de038b51fe00072069e2ad76706
{
"password": "password2"
}
Я использую $request->request->get('password');
, но возвращает ноль;
"hydra: title": "Произошла ошибка"," hydra: description ":" Не удалось автоматически проверить значения типа \ "NULL \">. Укажите ограничение. ",
Вот мой UserController
public function resetPassword($data, Request $request, UserService $userService)
{
/** @var User $userFromRequest */
$userFromRequest = $data;
$resetKey = $request->query->get('reset_key');
if ($resetKey === null) {
throw new AccessDeniedException();
}
$userFromDatabase = $userService->getUserById($userFromRequest->getId());
if ($userFromDatabase === null) {
throw new AccessDeniedException();
}
if ($userFromRequest->getId() !== $userFromDatabase->getId()) {
throw new AccessDeniedException();
}
if ($resetKey !== $userFromDatabase->getResetKey()) {
throw new AccessDeniedException();
}
$now = new \DateTime();
$isGreaterThan24Hours = $userFromDatabase->getResetRequestAt()
->diff($now)->format('H') > 24;
//return $isGreaterThan24Hours;
if ($isGreaterThan24Hours) {
throw new AccessDeniedException();
}
return $request->request->get('password');
// set user pssword
$userService->resetPassword($userFromDatabase);
return $userFromDatabase;
}