🧱 Суть

Laravel уже содержит готовый механизм восстановления пароля.

Одним вызовом можно:

  • найти пользователя;
  • создать токен;
  • сохранить его;
  • отправить письмо;
  • вернуть результат.

📦 Проблема

Если реализовывать восстановление пароля самостоятельно, придётся писать:

  • генерацию токена;
  • хранение токена;
  • отправку email;
  • проверку срока действия;
  • защиту от ошибок.

✅ Решение

Использовать Password::sendResetLink().

💻 Код

Отправка письма:

$status = Password::sendResetLink(
    $request->only('email')
);

Проверка результата:

return $status === Password::ResetLinkSent
    ? response()->json([
        'message' => 'Reset link sent',
    ])
    : response()->json([
        'message' => __($status),
    ], 422);

🎯 Вывод

  • Password предоставляет готовый механизм восстановления пароля.
  • Laravel автоматически создаёт токен и отправляет письмо.
  • __() используется для локализации сообщений.
  • При ошибке часто используется HTTP 422.

🔗 Связано