amsxbg / box-jwt
Requires
- firebase/php-jwt: ^5.2
- guzzlehttp/guzzle: ^7.2
- laminas/laminas-config: ^3.4
- laminas/laminas-dependency-plugin: ^2.1
Requires (Dev)
- phpunit/phpunit: ^9.3
This package is not auto-updated.
Last update: 2024-09-18 20:18:30 UTC
README
入门指南
在您开始编写PHP代码之前,您需要使用Box配置应用程序设置。要开始配置应用程序,请按照以下 说明 操作。
确保选择 OAuth 2.0 with JWT (服务器身份验证) 作为 身份验证方法。
同时确保授予应用程序处理文件和文件夹的权限。在包含示例的情况下,应授予读取和写入文件以及以用户身份执行操作的权限。
在创建/生成您的RSA密钥对后,下载您的应用程序配置JSON文件。
配置本地设置
将项目克隆到您的本地计算机上。
复制项目根目录中的 example.box.config.php
并将其保存为 box.config.php
。填写从下载的配置JSON文件中缺失的值。
jwtPrivateKey
是您之前创建/生成的私钥的路径。例如,如果您的私钥 pkey.pem
在您的本地项目目录中,您将设置如下
return array( "clientId" => "<clientId>", "clientSecret" => "<clientSecret>", "enterpriseId" => "<enterpriseId>", "jwtPrivateKey" => __DIR__ . "/pkey.pem", "jwtPrivateKeyPassword" => "<passphrase>", "jwtPublicKeyId" => "<publicKeyID>", );
安装依赖项(假设您已经安装了 Composer)。
composer install
运行示例
示例存储在项目根目录中的 examples
文件夹中。要从项目根目录运行获取访问令牌的示例,请执行以下操作
php ./examples/exAuthGetAccessToken.php
这将返回类似以下的内容
Access Token: BrTUlJQ55EhpAZFXYmJXXfZxuCvM5uq1
涉及文件和文件夹的示例将代表Box用户。您需要打开示例文件并填写 $userLogin
的电子邮件。
$userLogin = 'johndoe@example.com';
开始项目
只需包含自动加载器以及 bootstrap/autoload.php
中的 helpers/helpers.php
。完成此操作后,使用示例来开始。一个很好的入门示例是 examples/exAuthGetAccessToken.php
。
运行测试
将 example.phpunit.xml
复制为 phpunit.xml
。打开 phpunit.xml
并将 AS_USER_EMAIL
填充为Box用户账户登录电子邮件。这是测试将代表该账户。
<php> <env name="APP_ENV" value="testing"/> <env name="CONFIG" value="box.config.php"/> <env name="AS_USER_EMAIL" value="johndoe@example.com"/> </php>
运行测试。
phpunit
您应该得到类似以下的输出
PHPUnit 7.0.1 by Sebastian Bergmann and contributors.
............ 12 / 12 (100%)
Time: 58.06 seconds, Memory: 6.00MB