hellkid / socialite-naszaklasa
NaszaKlasa OAuth2 提供者用于 Laravel Socialite
Requires
- php: >=5.5.9
- socialiteproviders/manager: 3.*
Requires (Dev)
- mockery/mockery: dev-master
- phpunit/phpunit: 6.0.*
This package is not auto-updated.
Last update: 2024-09-29 02:33:39 UTC
README
文档
此软件包基于 Socialite Providers 的出色软件包。
如果您需要更多关于如何使用此软件包的信息,请随时参考他们的文档。
安装
1. COMPOSER
这假设您已经全局安装了 composer
composer require hellkid/socialite-naszaklasa
2. 服务提供者
如果您已经添加了它,请从 config\app.php 中的 providers[] 数组中移除 Laravel\Socialite\SocialiteServiceProvider。
将 \SocialiteProviders\Manager\ServiceProvider::class 添加到 config\app.php 中的 providers[] 数组。
例如
'providers' => [
// a whole bunch of providers
// remove 'Laravel\Socialite\SocialiteServiceProvider',
\SocialiteProviders\Manager\ServiceProvider::class, // add
];
注意:如果您想使用 Socialite Facade,您需要 安装 它。
3. 添加事件和监听器
将 SocialiteProviders\Manager\SocialiteWasCalled 事件添加到 <app_name>/Providers/EventServiceProvider 中的 listen[] 数组。
将您的监听器(即来自提供者的监听器)添加到您刚刚创建的 SocialiteProviders\Manager\SocialiteWasCalled[]。
您为该提供者添加的监听器是 'Hellkid\Hellkid\SocialiteNaszaklasa\NaszaKlasaExtendSocialite@handle'。
注意:除非您用自己的提供者覆盖它们,否则您不需要为内置的 socialite 提供者添加任何内容。
例如
/**
* The event handler mappings for the application.
*
* @var array
*/
protected $listen = [
\SocialiteProviders\Manager\SocialiteWasCalled::class => [
// add your listeners (aka providers) here
'Hellkid\Hellkid\SocialiteNaszaklasa\NaszaKlasaExtendSocialite@handle',
],
];
4. 环境变量
如果您添加到您的 .env 中,如以下所示,则不需要将条目添加到服务数组中。
将提供者值追加到您的 .ENV 文件。
// other values above
NASZAKLASA_KEY=yourkeyfortheservice
NASZAKLASA_SECRET=yoursecretfortheservice
NASZAKLASA_REDIRECT_URI=https://example.com/login
添加到 config/services.php。
如果您将值添加到 .env 中,如上所示,则不需要添加此内容。以下值提供作为方便,以备开发人员无法使用 .env 方法的情况。
'naszaklasa' => [
'client_id' => env('NASZAKLASA_KEY'),
'client_secret' => env('NASZAKLASA_SECRET'),
'redirect' => env('NASZAKLASA_REDIRECT_URI'),
],
现在您应该能够像通常使用 Socialite 一样使用它(假设您已安装 facade)
return Socialite::with('naszaklasa')->redirect();
您可以使用 Socialite 提供者与 Lumen 一起使用。只需确保您已启用 facade 支持,并且正确遵循设置说明。
注意:如果您使用 Lumen,所有提供者都将自动无状态,因为 Lumen 不跟踪状态。
此外,Lumen 中不能从 services[] 解析配置。您只能设置此文档中所示 .env 文件中的值。如有必要,您还可以覆盖配置。