Я использую Satellizer с Laravel для аутентификации, и у меня в моей базе данных есть таблица password_resets со следующими полями: id, email, token, я могу отправить ссылку для сброса и добавить токен в эту таблицу, но когда дело доходит до изменения пароль возвращает неверный токен.
Просто чтобы вы знали, я не совсем уверен, и я даже не верю в это, как это возможно, проблема возникает только тогда, когда количество строк в таблице password_resets превышает 30-40, например, если я удаляю все записи, чем это работает хорошо … довольно странно!
Мой бэкэнд-код выглядит так:
public function postReset(Request $request)
{
$this->validate($request, [
'token' => 'required',
'email' => 'required|email',
'password' => 'required|confirmed',
]);
$credentials = $request->only(
'email', 'password', 'password_confirmation', 'token'
);
$response = $this->passwords->reset($credentials, function ($user, $password) {
$user->password = bcrypt($password);
$user->save();
$this->auth->login($user);
});switch ($response) {
case PasswordBroker::PASSWORD_RESET:
return Response::json(array('success' => true));
default:
return Response::json(array('success' => false, 'message' => $response));
}
}
Таким образом, он всегда входит в стандартный stm с сообщением Invalid Token.
Задача ещё не решена.
Других решений пока нет …