本文实例讲述了Laravel5.4框架使用socialite实现github登录的方法。分享给大家供大家参考,具体如下:
1.安装laravel5.4
1
|
composer create-project laravel /laravel zcms 5.4
|
2.安装Socialite
1
|
composer require laravel /socialite
|
3.配置
编辑config/app.php
1
2
3
4
|
'providers' => [
// 其它服务提供者...
Laravel\Socialite\SocialiteServiceProvider:: class ,
],
|
1
2
3
|
'aliases' => [
'Socialite' => Laravel\Socialite\Facades\Socialite:: class ,
]
|
编辑config/service.php
1
2
3
4
5
|
'github' => [
'client_id' => env( 'GITHUB_CLIENT_ID' ),
'client_secret' => env( 'GITHUB_CLIENT_SECRET' ),
'redirect' => env( 'GITHUB_REDIRECT' ),
],
|
4.申请github oauth apps
①.登录github->settings->OAuth Apps
②.填写Homepage URL(网站域名http://www.zcms.site),Authorization callback URL(回调路径http://www.zcms.site/github/login)
③.复制client_id,client_secret到.env文件
GITHUB_CLIENT_ID=211a7aa4b9c5a3a4c10c
GITHUB_CLIENT_SECRET=2d3174561e440ed887a604f571aff9fa5bd84e44
GITHUB_REDIRECT=http://www.zcms.site/github/login
5.使用
①.添加路由
1
2
|
Route::get( '/login' , 'LoginController@github' );
Route::get( '/github.login' , 'LoginController@githubLogin' ); //这里为刚才的回调路径
|
②.创建Controller
App\Http\Controllers创建LoginController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Socialite;
class LoginController extends Controller
{
public function github()
{
return Socialite::driver( 'github' )->redirect();
}
public function githubLogin()
{
$user = Socialite::driver( 'github' )->user();
dd( $user );
}
}
|
6.见证奇迹吧
访问www.zcms.site/login。竟然跳转到了github,确认之后返回www.zcms.site/github/login?code=乱七八糟
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/sinat_21125451/article/details/78018300