covobo/socialite-mailru

Mail.ru OAuth2 提供程序用于 Laravel Socialite

1.0.1 2019-11-11 19:37 UTC

This package is auto-updated.

Last update: 2024-09-12 06:59:55 UTC


README

与 jhaoda/socialite-mailru 的区别

该包 jhaoda/socialite-mailru 只支持基于 connect.mail.ru 身份验证的旧版 mailru OAuth2。

此包与基于 oauth.mail.ru 的当前 mailru OAuth2 兼容。

包详细信息

此包不支持额外的 mailru 安全功能 "state"。包使用临时的解决方案来通过 mailru 验证。

安装

1. 在 mail.ru 上设置您的应用程序

详细信息请见此处 https://oauth.mail.ru/app/

2. 安装包

composer require covobo/socialite-mailru

3. 服务提供程序

  • 如果您已经添加了它,请从 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,您需要 安装它

4. 添加事件和监听器

  • SocialiteProviders\Manager\SocialiteWasCalled::class 事件添加到 <app_name>/Providers/EventServiceProvider 中的 listen[] 数组。

  • 将您的监听器(即来自提供程序的监听器)添加到您刚刚创建的 SocialiteProviders\Manager\SocialiteWasCalled[]

  • 您添加到此提供程序的监听器是 Covobo\SocialiteProviders\MailRu\MailRuExtendSocialite::class

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

例如

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

5. 服务数组和 .env

添加到 config/services.php

'mailru' => [
    'client_id' => env('MAILRU_CLIENT_ID'),
    'client_secret' => env('MAILRU_CLIENT_SECRET'),
    'redirect' => env('MAILRU_REDIRECT'),  
],

将提供程序值追加到您的 .env 文件

// other values above
MAILRU_CLIENT_ID=application_id
MAILRU_CLIENT_SECRET=application_secret
MAILRU_REDIRECT=https://yoursite.com/callback