pltrue / thirdparty_oauth
这是一个第三方授权登录扩展包。目前支持GITHUB、GITEE、谷歌、微博、微信、QQ等授权登录
Installs: 1 437
Dependents: 0
Suggesters: 0
Security: 0
Stars: 37
Watchers: 2
Forks: 9
Open Issues: 3
Requires
- guzzlehttp/guzzle: ^7.2
- dev-master
- v2.0
- v2.0-beta
- v1.19
- 1.15
- 1.14
- 1.13
- 1.12
- 1.11
- 1.10
- 1.09
- 1.08
- 1.07
- v1.7
- v1.6.1-beta
- 1.06
- v1.6
- v1.6-beta
- 1.05
- v1.5
- v1.4
- v1.3
- v1.2.1
- v1.2
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- dev-analysis-D2dGyg
- dev-analysis-WN9adN
- dev-analysis-WN9Klj
- dev-analysis-nNDaY5
- dev-742481030-patch-1-1
- dev-742481030-patch-1
- dev-dev
- dev-analysis-J2Weyn
- dev-analysis-VrWWxg
- dev-analysis-jLmmdL
- dev-analysis-VrWAaV
- dev-analysis-1bexxL
- dev-analysis-aj0oM0
- dev-analysis-e7djWa
- dev-analysis-OMRA2L
- dev-analysis-lKomjW
- dev-analysis-Rv16M7
This package is auto-updated.
Last update: 2024-12-15 09:06:31 UTC
README
这是一个社会化登录的第三方登录扩展包
v2.0版本兼容 Laravel-Octane
安装
使用 composer 安装:
$ composer require pltrue/thirdparty_oauth "v1.7"
贡献
你可以通过以下三种方式做出贡献:
- bug反馈 issue tracker.
- 回答问题或修复错误 issue tracker.
- 贡献新特性或更新wiki。
目前支持第三方登录
- 1.QQ(app/h5/web)
- 2.微信(web扫码)
- 3.微博(app/h5/web)
- 4.小米(web/h5)
- 5.抖音
- 6.世纪互联(微软)
- 7.微软
- 8.gitee
- 9.github
- 10.gitlab
- 11.google
- 12.line
贡献者🎉、以及合并日志
如何申请应用授权?
参数说明
redirect_url 回调地址将使用方法写到回调接口即可 获取到用户的一些基础信息
client_id 应用授权id
client_secret 应用授权key
所有支持平台的类型github
gitee
gitlab
weixin
alipay
microsoft
配置文件下标一致
建议
前后端分离下建议前端直接请求授权接口,后端负责回调接口即可
PHP-FPM下安装
composer require pltrue/thirdparty_oauth "v1.7"
Laravel Octane 常驻内存下安装
composer require pltrue/thirdparty_oauth "v2.0"
发布配置
php artisan vendor:publish --tag=oauth
简单使用
- 授权方法
$api = new SocialiteAuth(config('oauth.github')); return $api->redirect('github');
*回调方法
public function githubCallBack() { $auth = new SocialiteAuth(config('oauth.github')); $user = $auth->driver('github')->user(); $users = User::query()->where('oauth_id',$user->id)->first(); if(!$users){ $users= User::query()->create([ 'name'=> empty($user->name) ?? $user->login, 'email'=>$user->email, 'avatar'=>$user->avatar_url, 'oauth_id'=>$user->id, 'bound_oauth'=>1 ]); } return $this->respondWithToken($users); }