cblink/hyperf-socialite 组件衍生于 laravel/socialite 组件的,我们对它进行了一些改造,大部分功能保持了相同。在这里感谢一下 Laravel 开发组,实现了如此强大好用的社会化登陆组件。
# 安装
composer require cblink/hyperf-socialite -vvv
# 创建配置文件
php bin/hyperf.php vendor:publish cblink/hyperf-socialite
配置文件位于 config/autoload/socialite.php
,如文件不存在可自行创建
<?php
return [
// 需要加载的provider
'providers' => [
// \HyperfSocialiteProviders\Feishu\Provider::class,
],
'config' => [
'facebook' => [
'client_id' => '',
'client_secret' => '',
// 其他provider中需要使用的配置
// ...
],
// qq,weixin... ]()
],
];
控制器中使用
<?php
use Cblink\Hyperf\Socialite\Contracts\SocialiteInterface;
class Controller
{
/**
* @param SocialiteInterface $socialite
* @return \Hyperf\HttpServer\Contract\ResponseInterface
*/
public function redirectToProvider(SocialiteInterface $socialite)
{
// 重定向跳转
$redirect = $socialite->driver('facebook')->redirect();
// 使用新的配置跳转
$socialite->driver('facebook')->setConfig([
'client_id' => 'xxx',
'client_secret' => 'xxxx',
])
return $redirect;
}
/**
* @param SocialiteInterface $socialite
*/
public function handleProviderCallback(SocialiteInterface $socialite)
{
// 获取用户信息
$user = $socialite->driver('facebook')->user();
//
// $user->token;
}
}
支持应用 | 驱动名称 |
---|---|
微博 | |
YouTube | youtube |
飞书自建应用 | feishu |
微信公众号 | weixin |
微信PC网站登陆 | weixinweb |
微信开放平台代公众号授权 | wechat_service_account |
企业微信第三方应用扫码 | third_weworkqr |
企业微信 | wework |
企业微信自建应用扫码 | weworkqr |
You can contribute in one of three ways:
- File bug reports using the issue tracker.
- Answer questions or fix bugs on the issue tracker.
- Contribute new features or update the wiki.
The code contribution process is not very formal. You just need to make sure that you follow the PSR-0, PSR-1, and PSR-2 coding guidelines. Any new code contributions must be accompanied by unit tests where applicable.
MIT