Как войти в систему с помощью Laravel и Passport - PullRequest
0 голосов
/ 12 сентября 2018

Я должен сделать работу для курса.Я должен попытаться сделать Rest API для Laravel.Для этого я установил паспорт.

Я следовал нескольким учебникам в Интернете и реализовал функцию входа в систему в моем Auth / LoginController

public function login(Request $request)
{
    $this->validateLogin($request);

    if ($this->attemptLogin($request)) {
        $user = Auth::user();
        $success['token'] = $user->createToken('auth')->accessToken;
        $success['user'] = $user;
        return response()->json($success, 201);
    }

    return $this->sendFailedLoginResponse($request);
}

Я тестирую с Почтальоном, и все, кажется, работает.Как и моя функция выхода из системы

public function logout()
{
    $user = Auth::user();
    $user->token()->revoke();
    $user->token()->delete();

    return response()->json(null, 204);
}

Теперь я пытаюсь интегрировать это в мой интерфейс.

Я могу соединиться с базовой формой входа Laravel.Только он перенаправляет меня в json моей функции login ().

Когда я обновляю страницу, она перенаправляет меня на панель инструментов (это то, что я хорошо связан).В моей базе данных токен хорошо создан.

Как использовать базовую аутентификацию Laravel для использования Passport или я чего-то не понял?

1 Ответ

0 голосов
/ 12 сентября 2018
// When you make login request, basically u r making a post request, 
// But when u refresh the page, get request is made

So, to go to dashboard page on login success, you must redirect to dashboard page
on login attempt success, e.g

enter code here// use Auth attempt to login with the provided credentials

// if get success redirect to the dashboard
public function login(Request $request) {
    $this->validateLogin($request);

    if ($this->attemptLogin($request)) {
        $user = Auth::user();
        $success['token'] = $user->createToken('auth')->accessToken;
        $success['user'] = $user;

        // return response()->json($success, 201);
        return redirect('/dashboard'); // your dashboard path
    }

    return $this->sendFailedLoginResponse($request);
}

Hope it works...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...