Я создаю API для существующей базы данных. Сначала я заметил проблему, когда увидел, что Auth :: попытка всегда возвращает false. Поскольку я реализовал собственный поставщик хеширования SHA1, я подумал, что это может быть проблемой.Почему Laravel Auth :: check всегда возвращает false?
Но я попробовал Hash :: make ('test'), и он дал мне 'a94a8fe5ccb19ba61c4c0873d391e987982fbbd3'. Затем я попробовал Hash :: make ($ client-> pwd), и он дал мне тот же хеш. До сих пор. Наконец, я сделал
if (Hash::check('test', $cli->pwd))
{
[...]
}
и он вернул false. По внешнему виду проблема заключается не в моем хеширующем провайдере, и я думаю, что это также почему Auth :: попытка не работает. Может ли кто-нибудь сказать мне, почему?
Auth :: попытка() будет хешировать сам пароль, так что, вероятно, он перехватил ваш «хэшированный» пароль. – Laurence
Вы интегрировали пользовательский поставщик хэширования в Auth? Потому что этот хеш не выглядит как хэширование BCrypt. –
Упс, ошибка с моей стороны. Я изменил его на if (Hash :: check ('test', $ cli-> pwd)). Все еще возвращающ ложь. И да, я думаю, что я правильно понял интеграцию, это SHA1, потому что мои пароли базы данных не являются хэшами bcrypt. –