framgia / fauth-php
Framgia 认证用户
Requires (Dev)
- mockery/mockery: ~0.9
- phpunit/phpunit: ~4.0|~5.0
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);