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 相关文章推荐
网络资源
Oct 09 PHP
初级的用php写的采集程序
Mar 16 PHP
PHP 批量更新网页内容实现代码
Jan 05 PHP
php生成数组的使用示例 php全组合算法
Jan 16 PHP
PHP弹出提示框并跳转到新页面即重定向到新页面
Jan 24 PHP
使用php测试硬盘写入速度示例
Jan 27 PHP
PHP查询快递信息的方法
Mar 07 PHP
详解PHP的Yii框架中自带的前端资源包的使用
Mar 31 PHP
thinkPHP实现将excel导入到数据库中的方法
Apr 22 PHP
PHP实现负载均衡下的session共用功能
Apr 17 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
php 的多进程操作实践案例分析
Feb 28 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 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
2010/03/23 PHP
Yii控制器中filter过滤器用法分析
2016/07/15 PHP
在页面上点击任一链接时触发一个事件的代码
2007/04/07 Javascript
js 操作符实例代码
2009/10/24 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
js 赋值包含单引号双引号问题的解决方法
2014/02/26 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
学习JavaScript设计模式之观察者模式
2020/04/22 Javascript
javascript创建对象的几种模式介绍
2016/05/06 Javascript
node.js学习之交互式解释器REPL详解
2016/12/08 Javascript
详解nodejs中exports和module.exports的区别
2017/02/17 NodeJs
JS+canvas实现的五子棋游戏【人机大战版】
2017/07/19 Javascript
vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
2017/11/27 Javascript
详解如何用模块化的方式写vuejs
2017/12/16 Javascript
小程序开发中如何使用async-await并封装公共异步请求的方法
2019/01/20 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
Vue根据条件添加click事件的方式
2019/11/09 Javascript
Vue实现点击当前行变色
2020/12/14 Vue.js
py-charm延长试用期限实例
2019/12/22 Python
Python模块 _winreg操作注册表
2020/02/05 Python
Python中私有属性的定义方式
2020/03/05 Python
Python学习之os模块及用法
2020/06/03 Python
Python调用Redis的示例代码
2020/11/24 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
日本最新流行服饰网购:Nissen
2016/07/24 全球购物
数据库笔试题
2013/05/09 面试题
资产评估专业大学生求职信
2013/09/29 职场文书
销售员岗位职责范本
2014/02/03 职场文书
物流毕业生个人的自我评价
2014/02/13 职场文书
演讲稿开场白台词
2014/08/25 职场文书
异地恋情人节寄语
2015/02/28 职场文书
大学学生会辞职信
2015/05/13 职场文书
品德与社会教学反思
2016/02/24 职场文书
python 遍历磁盘目录的三种方法
2021/04/02 Python