OVH OAuth2 Provider for SocialiteProviders

4.1.0 2020-12-01 23:10 UTC

This package is auto-updated.

Last update: 2024-08-26 21:37:29 UTC


README

composer require socialiteproviders/ovh

安装与基本使用

请参阅基础安装指南,然后按照以下特定提供者说明操作。

特定配置

通过此链接在OVH创建您的应用程序凭据。

首先选择“端点”(即服务和国家),然后点击右侧端点下的“创建应用程序凭据”链接。

将配置添加到config/services.php

'ovh' => [
    'client_id' => env('OVH_APP_KEY'),
    'client_secret' => env('OVH_APP_SECRET'),
    'endpoint' => env('OVH_ENDPOINT'),
    'redirect' => env('OVH_REDIRECT_URI'),
],

添加提供者事件监听器

Laravel 11+

在Laravel 11中,默认的EventServiceProvider提供者已被移除。取而代之的是,在AppServiceProviderboot方法中,使用Event外观的listen方法添加监听器。

  • 注意:除非您用自己的提供者覆盖了它们,否则无需为内置的Socialite提供者添加任何内容。
Event::listen(function (\SocialiteProviders\Manager\SocialiteWasCalled $event) {
    $event->extendSocialite('ovh', \SocialiteProviders\Ovh\Provider::class);
});
Laravel 10或以下配置包的监听器以监听`SocialiteWasCalled`事件。

将事件添加到app/Providers/EventServiceProvider中的listen[]数组中。有关详细说明,请参阅基础安装指南

protected $listen = [
    \SocialiteProviders\Manager\SocialiteWasCalled::class => [
        // ... other providers
        \SocialiteProviders\Ovh\OvhExtendSocialite::class.'@handle',
    ],
];

使用

现在您应该能够像通常使用Socialite一样使用提供者(假设您已安装外观)

return Socialite::driver('ovh')->redirect();

返回的用户字段

  • id(消费者密钥)
  • nickname(昵称)
  • 名称
  • 电子邮件

更多字段可在user子键下找到

$user = Socialite::driver('ovh')->user();

$phone = $user->user['phone'];
$country = $user->user['country'];