buerxiaojie / laravel-oauth
oauth for laravel. for example, QQ, wechat, github..
1.1.2
2017-08-17 09:44 UTC
Requires
- php: >=5.5
- guzzlehttp/guzzle: ~6.0
- illuminate/support: 5.3.*||5.4.*
This package is auto-updated.
Last update: 2026-03-10 15:12:45 UTC
README
(一)安装
1. 安装:
composer require buerxiaojie/laravel-oauth
2. 注册:
在 config/app.php 文件的 providers 数组中加入:
Buerxiaojie\Providers\OauthServiceProvider::class,
在 config/app.php 文件的 aliases 数组中加入:
'OauthUser' => Buerxiaojie\Facades\Oauth::class,
在 app/Providers/AuthServiceProvider.php 文件的 boot 方法中加入:
use Buerxiaojie\Oauth;
Oauth::routes();
3. 生成配置文件:
php artisan vendor:publish
(二)配置
在 config/oauth.php 文件中配置以下:
/**
* 加入以下
*
*/
'qq' => [
'app_id' => 'YOUR APP ID',
'app_secret' => 'YOUR APP SECRET',
],
'wechat' => [
'app_id' => 'YOUR APP ID',
'app_secret' => 'YOUR APP SECRET'
]
(三)使用
1. 在QQ ,微信等平台注册账号,并将回掉地址修改为{YOUR HOST}/oauth/oauth-callback:
2. 在app/Oauth/Hander.php文件的handle方法中进行获取用户信息之后的逻辑处理:
/**
*业务处理
*/
public function handle()
{
//$oauthUser 即为获取的用户信息
$oauthUser = OauthUser::userInfo();
/**
*业务处理
*/
}
3. 添加新的server。
1. 运行一下命令生成server类
php artisan make:oauthServer Github
app/Oauth/Servers/Github.php即可生成。填充相应的方法即可。
2. 在 config/oauth.php 文件中配置以下:
/**
* 加入以下
*
*/
'servers' => [
'github' => 'App\Oauth\Servers\Github',
],
'github' => [
'app_id' => 'YOUR APP ID',
'app_secret' => 'YOUR APP SECRET',
]
3. 在页面中放置请求链接:
<a href="/oauth/oauth-login?server=github"><img src=""></a>
4. 若自定义回掉地址,则在对应的回掉方法中通过以下方法获取用户信息:
use OauthUser;
public function oauthCallback(Request $request)
{
$userInfo = OauthUser::getUserInfo($request);
/**
* 其他业务逻辑
*/
}