Я использую систему Laravel 5.2 Auth с этой командой:
php artisan make:auth
Хотя это работает отлично, так как моя цель – использовать внешний API для регистрации, регистрации и смены пароля, при этом все еще имея возможность использовать основную функцию класса Auth.
Поэтому, беря логин, например, я хочу использовать что-то вроде
function login(ApiController $api) { // This function return data or error code and message in JSON $login = $api->login([ $credentials['email'], $credentials['password']]); if($login->success) // login successfully like normal Auth would do else // redirect to main page with $login->message }
Кстати, я хочу передать поля, исходящие из $ login, в класс Auth, например, мы можем фактически сделать Auth :: user () -> email, давая нам электронное письмо, я бы хотел установить значение, например «поле базы данных», но с полями API JSON
Я посмотрел в Интернете и нашел что-то, что нужно сделать внутри AuthController и что-то связанное с ServiceProvider, но я не знаю, как следовать моим точным потребностям
В этом случае поможет добавить пользовательский поставщик. Здесь нет необходимости играть с AuthController. Проверьте эту страницу Laravel Docs .
Вам нужно будет создать новый User Provider, который реализует Illuminate \ Contracts \ Auth \ UserProvider , укажет его в AuthServiceProvider и соответствующим образом обновит ваш конфигурационный файл auth .
Ниже приведены ссылки на пользовательские поставщики по умолчанию для базы данных:
1) DatabaseUserProvider
2) EloquentUserProvider
Я закончил кодирование своей собственной системы Auth …
Использование session () и Input ()