buer0 / laravel-oauth by buer

oauth for laravel. for example, QQ, wechat, github..
317
2
0
Package Data
Maintainer Username: buer
Maintainer Contact: 1219476468@qq.com (buer)
Package Create Date: 2017-07-10
Package Last Update: 2017-08-17
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2025-02-06 03:03:43
Package Statistics
Total Downloads: 317
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 2
Total Watchers: 0
Total Forks: 0
Total Open Issues: 0

oauth for laravel

(一)安装

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);

		/**
		* 其他业务逻辑
		*/
	}