Auth :: user () возвращает ноль в пользовательской аутентификации? Есть ли проблемы в маршруте? - PullRequest
0 голосов
/ 29 января 2020

Вот мои маршруты в api.php. После Аутентификации я не получаю данные пользователя по другому маршруту

Route::post('login', ['as' => 'login', 'uses' => 'CustomLogin@userLogin']);
// Route::post('/login','CustomLogin@userLogin');
Route::group(['middleware' => 'auth:api'], function(){
    Route::post('/change-password','ChangePassword@changePassword');
});


public function changePassword(Request $request){
        // $user = Auth::user();
         print_r($user);
         die();
    }

Ответы [ 2 ]

0 голосов
/ 29 января 2020

Вы комментируете строку $ user, чтобы эта переменная вообще не объявлялась.

    // $user = Auth::user();

Вы должны раскомментировать ее:))

0 голосов
/ 29 января 2020

Возможно, что-то не так с вашим методом входа в систему, если вы правильно настроили все в системе токенов.

Вы можете использовать приведенный ниже фрагмент для входа в систему, который может измениться в соответствии с вашими учетными данными.

<?php 

class AuthController extends Controller
{
    /**
     * Get a JWT via given credentials.
     *
     * @return \Illuminate\Http\JsonResponse
     */
    public function login()
    {
        if (request::has(['email', 'password'])) {

            $user = User::whereEmailAndPassword(request()->get('email'),request()->get('password'))->first();
            $credentials = request(['email', 'password']);

            if ($user and $token = auth()->attempt($credentials)) {
                return response()->json(['message' => 'Login Successful', 'jwt_token'=>$token], 200);
            } else {
                return response()->json(['message' => 'Unauthorized'], 401);
            }

        } else {
            return response()->json(['message' => 'Pease provide your email and password to login'], 401);
        }
    }
}

И, конечно, есть тысячи способов сделать то же самое

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