Войдите в систему, используя другой API на сервере в laravel - PullRequest
0 голосов
/ 18 июня 2019

Аргумент 1 передан Illuminate \ Auth \ SessionGuard :: login () должен быть Экземпляр Illuminate \ Contracts \ Auth \ Authenticatable, экземпляр Подсветка \ Http \ Запрос передан

Ответы [ 2 ]

0 голосов
/ 19 июня 2019
public function userlogin(Request $request){
    $validatedData = $request->validate([
                        'email' => 'required|max:255',
                        'pwd'   => 'required|max:255|min:3',
                        ]);

    $data = [   "username"=>$request->email,
                "password"=>$request->pwd,
            ]; 

    $ch = curl_init("http://localhost/getuus/login");           

    curl_setopt($ch, CURLOPT_POSTFIELDS,  json_encode($data));
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type:application/json']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
    curl_close($ch);
    $result = collect(json_decode($result));

    if ($result['status'] == 1) {
        $Auth = new Auth;   $Auth::login($request, true);
        return redirect('home');           
    }
    else{

        return view('userlogin');
    }

}
0 голосов
/ 18 июня 2019

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

Для этого вам нужно создать собственную систему аутентификации, промежуточное ПО для защиты авторизованных маршрутов и т. Д.., поскольку laravel по умолчанию Auth не будет работать, так как это зависит от Authenticatable контракта, который в свою очередь зависит от user модальности приложения.

Если этот другой API, оказывается, одним из социальныхmedia, в этом случае вы можете использовать socialite driver.

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