andrewnovikof/facebookserviceprovider

为 Laravel Socialite 的 Facebook OAuth2 提供商

3.0.8 2019-01-22 22:00 UTC

This package is auto-updated.

Last update: 2024-09-23 11:29:48 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

1. 安装

composer require andrewnovikof/facebookserviceprovider

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[]

  • 为该提供者添加的监听器是 AndrewNovikof\SocialiteProviders\Facebook\FacebookExtendSocialite::class

  • 注意:除非你用自己的提供者覆盖它们,否则你不需要为内置的社交提供者添加任何内容。

例如

/**
 * The event handler mappings for the application.
 *
 * @var array
 */
protected $listen = [
    SocialiteProviders\Manager\SocialiteWasCalled::class => [
        AndrewNovikof\SocialiteProviders\Facebook\FacebookExtendSocialite::class
    ],
];

4. 服务数组和 .env

添加到 config/services.php

'facebook' => [
    'client_id' => env('FACEBOOK_ID'),
    'client_secret' => env('FACEBOOK_SECRET'),
    'redirect' => env('FACEBOOK_REDIRECT'),  
],

将提供者值追加到你的 .env 文件中: 注意:请添加公钥和私钥!

// other values above
FACEBOOK_ID=your_app_id_for_the_service
FACEBOOK_SECRET=your_app_public_for_the_service
FACEBOOK_REDIRECT=https://example.com/login