superbrave/auth0-http-client

为 Symfony HTTP 客户端提供的 Auth0 API 客户端认证。

3.0.0 2024-03-08 10:35 UTC

README

Latest version on Packagist Software License Build Status Coverage Status Code Quality

Auth0 API 客户端认证,用于 Symfony HTTP 客户端。

使用 Composer 安装

运行以下命令将包添加到项目的 composer.json 文件中

$ composer require superbrave/auth0-http-client symfony/http-client

可以将 symfony/http-client 替换为任何其他实现了 Symfony HTTP 客户端合约的 HTTP 客户端。

使用方法

以下示例展示了如何创建进行通过 Auth0 认证的 API 调用所需的实例

<?php

use Superbrave\AuthZeroHttpClient\AuthZeroAuthenticatingHttpClient;
use Superbrave\AuthZeroHttpClient\AuthZeroConfiguration;
use Symfony\Component\HttpClient\HttpClient;

$httpClient = HttpClient::create();
$authZeroConfiguration = new AuthZeroConfiguration(
    'https://dev-1234.eu.auth0.com', // Your Auth0 tenant URL
    'clientId',                      // Your application's Client ID
    'clientSecret',                  // Your application's Client Secret
    'https://www.superbrave.nl/api'  // The unique identifier of the target API you want to access
);

$authZeroHttpClient = new AuthZeroAuthenticatingHttpClient($httpClient, $authZeroConfiguration);

$response = $authZeroHttpClient->request('GET', 'https://superbrave.nl/api');

可选地,可以将自定义缓存实例注入到 AuthZeroAuthenticatingHttpClient 中。缓存将存储 Auth0 返回的配置 TTL 的访问令牌(JWT)。

许可证

Auth0 HTTP 客户端采用 MIT 许可证授权。请参阅 LICENSE 文件 以获取详细信息。