萨默-阿尔萨耶格/social_plugin

此包的最新版本(dev-master)没有提供许可信息。

将社交登录和注册集成到Laravel Lumen框架

dev-master 2018-07-20 10:49 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:33:23 UTC


README

此包是基于Laravel/Lumen框架和laravel/socialite的社会登录和注册集成。

因此,首先您应该安装 laravel/lumen,然后安装 laravel/socialite

安装完Lumen和socialite后,然后安装此库,您就可以使用Laravel Socialite通过OAuth提供者进行认证。Socialite目前支持Facebook、Twitter、LinkedIn、Google、GitHub和Bitbucket的认证。

在此包中,您可以看到我对socialite进行的修改,以便使其能够工作

  • 文件 bootstrap/app.php

    • 取消注释 $app->withFacades();

    • 在“创建应用”部分添加以下代码
      if (!class_exists('Socialite')) { class_alias('Laravel\Socialite\Facades\Socialite', 'Socialite'); }

    • 在“注册服务提供者”部分添加以下代码
      $app->register(Laravel\Socialite\SocialiteServiceProvider::class);

    • 在“return $app;”之前添加以下代码
      $app->configure('services');

  • config/services.php

    • 在应用根目录添加config文件夹

    • 在config文件夹中添加services.php文件
      此文件包含每个平台(Facebook、Github、Twitter等)使用的id、secret和回调url


  • app/Http/Controllers/Auth/LoginController.php

    • 在app/Http/Controllers中添加Auth文件夹

    • 在文件夹中添加LoginController.php文件
      此文件负责处理调用平台和返回的用户信息的回调函数

  • 在app文件夹中添加helpers.php文件

    • Lumen非常精简,路由解析为简单的数组,而不是路由对象。这是一个问题,因为Request::route($key)方法假设路由将有参数方法。因此,此文件包含route_parameter函数以获取路由的参数。
      注意:要使用helpers.php文件中的函数,您必须在composer.json中添加到autoload "files": [ "app/helpers.php" ],并在命令行中运行composer dump-autoload