akkyoh/socialite_google

Laravel Socialite 的 Google OAuth2 提供者

2.0.4 2016-07-29 23:04 UTC

This package is not auto-updated.

Last update: 2024-09-18 18:38:45 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version

安装

1. COMPOSER

composer require akkyoh/socialite_google

2. 服务提供者

  • 如果已经添加了 Laravel\Socialite\SocialiteServiceProvider,请从 config\app.php 中的 providers[] 数组中移除。
  • 将 \SocialiteProviders\Manager\ServiceProvider::class 添加到 config\app.php 中的 providers[] 数组。
// For example
'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[]。
  • 您为该提供者添加的监听器是 'Akkyoh\SocialiteGoogle\GoogleExtendSocialite@handle'。
  • 注意:除非您用您自己的提供者覆盖它们,否则您不需要为内置的 socialite 提供者添加任何内容。
// For example
protected $listen = [
    \SocialiteProviders\Manager\SocialiteWasCalled::class => [
        // add your listeners (aka providers) here
        'Akkyoh\SocialiteGoogle\GoogleExtendSocialite@handle',
    ],
];

4. 环境变量

如果您将环境值添加到 .env 文件中,如以下所示,则无需添加到 services 数组中的条目。

将提供者值追加到 .env 文件中
// other values above
GOOGLE_KEY=yourkeyfortheservice
GOOGLE_SECRET=yoursecretfortheservice
GOOGLE_REDIRECT_URI=https://example.com/login/
添加到 config/services.php

如果将值添加到 .env 文件中,则无需添加此内容。以下值是为了方便开发者,如果他们无法使用 .env 方法

'google' => [
    'client_id' => env('GOOGLE_KEY'),
    'client_secret' => env('GOOGLE_SECRET'),
    'redirect' => env('GOOGLE_REDIRECT_URI'),
],

用法

现在您应该能够像通常使用 Socialite 一样使用它(假设您已安装了 facade)

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

资源

Socialite Providers Laravel Socialite 文档