kyoya0819 / socialite-slack
为 Laravel Socialite 的 Slack OAuth2 提供程序
dev-main
2022-11-22 06:14 UTC
Requires
- php: ^8.0.2
- socialiteproviders/manager: ~4.0
This package is auto-updated.
Last update: 2024-09-22 13:40:36 UTC
README
文档
此包使用了位于 此处 的 SocialiteProviders
包。
安装包
composer require mpociot/socialite-slack
安装服务提供者
-
如果已经添加,请从 config/app.php 中的 providers[] 数组中移除
Laravel\Socialite\SocialiteServiceProvider
。 -
将
\SocialiteProviders\Manager\ServiceProvider::class
添加到 config/app.php 中的 providers[] 数组。
安装事件监听器
-
将
SocialiteProviders\Manager\SocialiteWasCalled
事件添加到<app_name>/Providers/EventServiceProvider
中的 listen[] 数组。 -
为该提供程序添加的监听器是
'Kyoya\Socialite\Slack\SlackExtendSocialite@handle',
。
例如
/** * The event handler mappings for the application. * * @var array */ protected $listen = [ \SocialiteProviders\Manager\SocialiteWasCalled::class => [ // add your listeners (aka providers) here 'Kyoya\Socialite\Slack\SlackExtendSocialite@handle', ], ];
环境变量
如果您将环境值添加到 .env 文件中,如下所示,则不需要向服务数组中添加条目。
追加到 .env
// other values above
SLACK_KEY=yourkeyfortheservice
SLACK_SECRET=yoursecretfortheservice
SLACK_REDIRECT_URI=https://example.com/login
追加到 config/services.php
如果您按上述方式将值添加到 .env 中,则不需要添加此条目。以下值作为方便开发者使用 .env 方法之外的案例提供。
'slack' => [ 'client_id' => env('SLACK_KEY'), 'client_secret' => env('SLACK_SECRET'), 'redirect' => env('SLACK_REDIRECT_URI'), ],
使用方法
重定向到 Slack 并使用您想要访问的作用域
return Socialite::with('slack')->scopes([ 'identity.basic', 'identity.email', 'identity.team', 'identity.avatar' ])->redirect();
许可证
MIT :)