라라벨 사교계 명사
bash composer require laravel/socialite
Socialite를 사용하기 전에 애플리케이션에서 사용하는 OAuth 서비스에 대한 자격 증명도 추가해야 합니다. 이러한 자격 증명은 config/services.php 구성 파일에 배치해야 하며 애플리케이션에 필요한 공급자에 따라 facebook, twitter, linkedin, google, github, gitlab 또는 bitbucket 키를 사용해야 합니다. 예를 들어:
'github' => [
'client_id' => env('GITHUB_CLIENT_ID'),
'client_secret' => env('GITHUB_CLIENT_SECRET'),
'redirect' => 'http://your-callback-url',
],
다음으로 사용자를 인증할 준비가 되었습니다! 두 가지 경로가 필요합니다. 하나는 사용자를 OAuth 공급자로 리디렉션하기 위한 것이고 다른 하나는 인증 후 공급자로부터 콜백을 수신하기 위한 것입니다. Socialite 파사드를 사용하여 Socialite에 액세스합니다.
<?php
/**
*@author Miller Juma
**/
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Laravel\Socialite\Facades\Socialite;
class LoginController extends Controller
{
/**
* Redirect the user to the GitHub authentication page.
*
* @return \Illuminate\Http\Response
*/
public function redirectToProvider()
{
return Socialite::driver('github')->redirect();
}
/**
* Obtain the user information from GitHub.
*
* @return \Illuminate\Http\Response
*/
public function handleProviderCallback()
{
$user = Socialite::driver('github')->user();
// $user->token;
}
}
리디렉션 방법은 사용자를 OAuth 공급자에게 보내는 작업을 처리하는 반면 사용자 방법은 들어오는 요청을 읽고 공급자로부터 사용자 정보를 검색합니다.
컨트롤러 메서드에 대한 경로를 정의해야 합니다.
use App\Http\Controllers\Auth\LoginController;
Route::get('login/github', [LoginController::class, 'redirectToProvider']);
Route::get('login/github/callback', [LoginController::class, 'handleProviderCallback']);
시도해 보세요. 막혔을 때 기꺼이 도와드리겠습니다...
Reference
이 문제에 관하여(라라벨 사교계 명사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jumamiller/laravel-socialite-3n81텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)