jhaoda / socialite-odnoklassniki
Laravel Socialite 的 Odnoklassniki OAuth2 提供者
v4.0.0
2021-03-19 13:56 UTC
Requires
- php: ^7.2 || ^8.0
- ext-json: *
- socialiteproviders/manager: ~4.0
README
1. 安装
composer require jhaoda/socialite-odnoklassniki
2. 服务提供者
- 如果您已经添加,请从
config\app.php
中的providers[]
数组中删除Laravel\Socialite\SocialiteServiceProvider
。 - 将
SocialiteProviders\Manager\ServiceProvider
添加到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::class
事件添加到<app_name>/Providers/EventServiceProvider
中的listen[]
数组。 -
将您的监听器(即来自提供者的)添加到您刚刚创建的
SocialiteProviders\Manager\SocialiteWasCalled[]
。 -
您为该提供者添加的监听器是
JhaoDa\SocialiteProviders\Odnoklassniki\OdnoklassnikiExtendSocialite::class
。 -
注意:除非您用您自己的提供者覆盖它们,否则您不需要为内置的 socialite 提供者添加任何内容。
例如
/** * The event handler mappings for the application. * * @var array */ protected $listen = [ \SocialiteProviders\Manager\SocialiteWasCalled::class => [ \JhaoDa\SocialiteProviders\Odnoklassniki\OdnoklassnikiExtendSocialite::class ], ];
4. 服务数组和 .env
添加到 config/services.php
'odnoklassniki' => [ 'client_id' => env('ODNOKLASSNIKI_ID'), 'client_secret' => env('ODNOKLASSNIKI_SECRET'), 'client_public' => env('ODNOKLASSNIKI_PUBLIC'), 'redirect' => env('ODNOKLASSNIKI_REDIRECT'), ],
将提供者值追加到您的 .env
文件中:注意:请添加公钥和私钥!
// other values above
ODNOKLASSNIKI_ID=your_app_id_for_the_service
ODNOKLASSNIKI_PUBLIC=your_app_public_for_the_service
ODNOKLASSNIKI_SECRET=your_app_secret_for_the_service
ODNOKLASSNIKI_REDIRECT=https://example.com/login