krdinesh/laravel-oauth2-greenhouse

Laravel 5.2 服务提供者,用于 league/oauth2-greenhouse

v1.0.1 2017-10-11 05:04 UTC

This package is auto-updated.

Last update: 2024-09-16 15:38:19 UTC


README

krdinesh/laravel-oauth2-greenhouse 是一个 Laravel 5.2 服务提供者,用于 krdinesh/oauth2-greenhouse

安装

推荐的安装方法是通过 PackagistComposer。运行以下命令安装包并将其添加到项目 composer.json 文件的要求中

composer require krdinesh/laravel-oauth2-greenhouse

使用 Composer 添加包后,您需要在 config/app.php 文件中的 providers 数组中添加以下内容

Krdinesh\Laravel\OAuth2\Greenhouse\GreenhouseServiceProvider::class

然后,在同一文件中的 aliases 数组中添加以下内容

'Greenhouse' => Krdinesh\Laravel\OAuth2\Greenhouse\Facades\Greenhouse::class

现在,运行以下命令以正确设置您的 Laravel 应用程序中的包

php artisan vendor:publish

最后,将您的客户端 ID、客户端密钥和重定向 URI 添加到 config/greenhouse.php 文件中。

示例

创建一个授权 URL,并将用户重定向到该 URL 以请求访问其 Greenhouse 账户

$authUrl = Greenhouse::authorize([], function ($url, $provider) use ($request) {
    $request->session()->put('greenhouseState', $provider->getState());
    return $url;
});

return redirect()->away($authUrl);

在重定向 URI 的路由中检查状态和授权码,并使用该代码获取访问令牌。将令牌存储到会话中或存储到您的数据存储库中的用户配置文件中。

if (!$request->has('state') || $request->state !== $request->session()->get('greenhouseState')) {
    abort(400, 'Invalid state');
}

if (!$request->has('code')) {
    abort(400, 'Authorization code not available');
}

$token = Greenhouse::getAccessToken('authorization_code', [
    'code' => $request->code,
]);

$token->getToken();

版权和许可

krdinesh/laravel-oauth2-greenhouse 库版权 ©Dinesh kumar,并许可在 MIT 许可证(MIT)下使用。有关更多信息,请参阅 LICENSE