socialiteproviders / harvest
Laravel Socialite 的 Harvest OAuth2 提供者
5.0.0
2021-06-02 22:32 UTC
Requires
- php: ^7.2 || ^8.0
- ext-json: *
- socialiteproviders/manager: ~4.0
This package is auto-updated.
Last update: 2024-08-26 21:32:52 UTC
README
composer require socialiteproviders/harvest
安装与基本使用
请参阅 基本安装指南,然后按照以下特定提供者说明进行操作。
在 config/services.php
中添加配置
请注意,此包的最新版本要求您使用 services
配置文件。之前直接读取环境变量,现已不再支持
'harvest' => [ 'client_id' => env('HARVEST_CLIENT_ID'), 'client_secret' => env('HARVEST_CLIENT_SECRET'), 'redirect' => env('HARVEST_REDIRECT_URI') ],
添加提供者事件监听器
Laravel 11+
在 Laravel 11 中,默认的 EventServiceProvider
提供者已被移除。取而代之,您可以在 AppServiceProvider
的 boot
方法中使用 Event
窗口上的 listen
方法添加监听器。
- 注意:除非您用自己的提供者覆盖它们,否则不需要为内置的 Socialite 提供者添加任何内容。
Event::listen(function (\SocialiteProviders\Manager\SocialiteWasCalled $event) { $event->extendSocialite('harvest', \SocialiteProviders\Harvest\Provider::class); });
Laravel 10 或以下
配置包的监听器以监听 `SocialiteWasCalled` 事件。将事件添加到 app/Providers/EventServiceProvider
中的 listen[]
数组中。有关详细说明,请参阅 基本安装指南。
protected $listen = [ \SocialiteProviders\Manager\SocialiteWasCalled::class => [ // ... other providers \SocialiteProviders\Harvest\HarvestExtendSocialite::class.'@handle', ], ];
使用方法
现在您应该能够像通常使用 Socialite 一样使用此提供者(假设您已安装了窗口)
return Socialite::driver('harvest')->redirect();
返回的用户字段
id
first_name
last_name
email
avatar