Laravel5.4框架使用socialite实现github登录的方法


Posted in PHP onMarch 20, 2019

本文实例讲述了Laravel5.4框架使用socialite实现github登录的方法。分享给大家供大家参考,具体如下:

1.安装laravel5.4

composer create-project laravel/laravel zcms 5.4

2.安装Socialite

composer require laravel/socialite

3.配置

编辑config/app.php

'providers' => [
  // 其它服务提供者...
  Laravel\Socialite\SocialiteServiceProvider::class,
],
'aliases' => [
  'Socialite' => Laravel\Socialite\Facades\Socialite::class,
]

编辑config/service.php

'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.使用

①.添加路由

Route::get('/login', 'LoginController@github');
Route::get('/github.login', 'LoginController@githubLogin'); //这里为刚才的回调路径

②.创建Controller

App\Http\Controllers创建LoginController.php

<?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程序设计有所帮助。

PHP 相关文章推荐
PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 PHP
PHP 创建标签云函数代码
May 26 PHP
PHP 简易输出CSV表格文件的方法详解
Jun 20 PHP
php获取本周开始日期和结束日期的方法
Mar 09 PHP
php转换颜色为其反色的方法
Apr 27 PHP
thinkPHP下的widget扩展用法实例分析
Dec 26 PHP
简要剖析PHP的Yii框架的组件化机制的基本知识
Mar 17 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
Jun 12 PHP
php获取远程图片并下载保存到本地的方法分析
Oct 08 PHP
基于php判断客户端类型
Oct 14 PHP
让ThinkPHP的模板引擎达到最佳效率的方法详解
Mar 14 PHP
php post换行的方法
Feb 03 PHP
PHP工厂模式的日常使用
Mar 20 #PHP
PHP函数积累总结
Mar 19 #PHP
PHP与Perl之间知识点区别整理
Mar 19 #PHP
PHP后台备份MySQL数据库的源码实例
Mar 18 #PHP
PHP5中使用mysqli的prepare操作数据库的介绍
Mar 18 #PHP
php+ajax 文件上传代码实例
Mar 18 #PHP
PHP中单例模式的使用场景与使用方法讲解
Mar 18 #PHP
You might like
PHP连接和操作MySQL数据库基础教程
2014/09/29 PHP
用js重建星际争霸
2006/12/22 Javascript
JavaScript实现删除,移动和复制文件的方法
2015/08/05 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
jQuery实现的购物车物品数量加减功能代码
2016/11/16 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
2016/12/22 Javascript
浅谈Vue的加载顺序探讨
2017/10/25 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
解决vue刷新页面以后丢失store的数据问题
2020/08/11 Javascript
基于Vue+Webpack拆分路由文件实现管理
2020/11/16 Javascript
[03:00]《DAC最前线》之欧美新秀VS老将
2015/02/01 DOTA
[00:32]2018DOTA2亚洲邀请赛VG出场
2018/04/03 DOTA
python基础教程之获取本机ip数据包示例
2014/02/10 Python
Python显示进度条的方法
2014/09/20 Python
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
2015/05/20 Python
基于Python实现一个简单的银行转账操作
2016/03/06 Python
20行python代码的入门级小游戏的详解
2019/05/05 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
2020/06/04 Python
解决python pandas读取excel中多个不同sheet表格存在的问题
2020/07/14 Python
详解python命令提示符窗口下如何运行python脚本
2020/09/11 Python
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
大学生的创业计划书就该这么写
2014/01/30 职场文书
期末自我鉴定
2014/02/02 职场文书
人事专员的岗位职责
2014/03/01 职场文书
供电工程专业求职信
2014/08/09 职场文书
2014最新党员违纪检讨书
2014/10/12 职场文书
2015年教育实习工作总结
2015/04/24 职场文书
反邪教观后感
2015/06/11 职场文书
2020优秀员工演讲稿(三篇)
2019/10/17 职场文书
Nginx反向代理及负载均衡如何实现(基于linux)
2021/03/31 Servers
Python机器学习之逻辑回归
2021/05/11 Python
html+css实现文字折叠特效实例
2021/06/02 HTML / CSS
Spring Bean的实例化之属性注入源码剖析过程
2021/06/13 Java/Android
gateway网关接口请求的校验方式
2021/07/15 Java/Android