Laravel Auth внешние данные для входа и регистрации

Я использую систему 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 ()