framgia/fauth-php

Framgia 认证用户

1.0.0 2017-08-07 04:36 UTC

This package is auto-updated.

Last update: 2024-09-14 19:53:25 UTC


README

安装

要开始使用 FramgiaAuth,请使用 Composer 将包添加到项目的依赖项中

composer require framgia/fauth-php

运行以下命令

composer update

配置

安装 Fauth 库后,在 config/app.php 配置文件中将 Framgia\Fauth\FAuthServiceProvider 注册到其中:Framgia\Fauth\FAuthServiceProvider::class,

此外,还需要将 Fauth 门面添加到 app 配置文件中的别名数组中:'Fauth' => Framgia\Fauth\Facades\Fauth::class,

您还需要添加应用程序使用的 OAuth 服务的凭据。这些凭据应放在 config/services.php 配置文件中,并使用 framgia 作为 framgia 提供程序的关键字。例如

'framgia' => [
    'client_id' => 'your-auth-framgia-app-id',
    'client_secret' => 'your-auth-framgia-app-secret',
    'base_url' => 'http://domain-auth-server',
    'redirect' => 'http://your-callback-url',
],

将以下内容添加到 composer.json(autoload-dev -> psr-4)"Framgia\\Fauth\\": "vendor/framgia/fauth/"

运行以下命令:composer dump-autoload

基本用法

接下来,您就准备好对用户进行认证了!您需要两个路由:一个用于将用户重定向到 OAuth 提供商,另一个用于在认证后接收提供商的回调。我们将使用 Fauth 门面访问 Fauth

<?php

namespace App\Http\Controllers\Auth;

use Fauth;

class LoginController extends Controller
{
    /**
     * Redirect the user to the Auth-Framgia authentication page.
     *
     * @return Response
     */
    public function redirectToProvider()
    {
        return Fauth::driver('framgia')->redirect();
    }

    /**
     * Obtain the user information from Auth-Framgia.
     *
     * @return Response
     */
    public function handleProviderCallback()
    {
        $user = Fauth::driver('framgia')->user();
    }
}

当然,您需要定义路由到您的控制器方法

Route::get('login/framgia', 'Auth\LoginController@redirectToProvider');
Route::get('login/framgia/callback', 'Auth\LoginController@handleProviderCallback');

一旦您有一个用户实例,您就可以获取更多关于该用户的信息

$user = Fauth::driver('framgia')->user();
$token = $user->token;
$refreshToken = $user->refreshToken; // not always provided
$expiresIn = $user->expiresIn;

如果您已经有了用户的有效访问令牌,您可以使用 userFromToken 方法检索他们的详细信息

$user = Fauth::driver('framgia')->userFromToken($token);

欢迎提交拉取请求。