vonage / jwt
为Vonage API创建JWT的独立包
0.5.1
2024-01-19 11:15 UTC
Requires
- php: ~8.1 || ~8.2 || ~8.3
- lcobucci/jwt: ^4.3.0|^5.0
- ramsey/uuid: ^4.7.5
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^8.5|^9.4
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-19 12:38:20 UTC
README
此库需要至少PHP版本8.0
这是用于生成JWT以使用Vonage API的PHP库。要使用此库,您需要一个Vonage账户。在vonage.com/dashboard免费注册。
安装
要使用客户端库,您需要创建一个Vonage账户。
要将PHP客户端库安装到您的项目中,我们建议使用Composer。
composer require vonage/jwt
您不需要克隆此存储库即可在您的项目中使用此库。使用Composer从Packagist安装它。
如果您是Composer的新手,这里有一些可能对您有用的资源
- Composer入门页面,来自Composer项目文档。
- Composer入门指南,来自ScotchBox的好朋友们。
使用方法
如果您使用Composer,请确保自动加载器包含在项目的引导文件中
require_once "vendor/autoload.php";
使用您要访问的Vonage应用程序的应用程序ID和私有密钥创建令牌生成器
$generator = new Vonage\JWT\TokenGenerator('d70425f2-1599-4e4c-81c4-cffc66e49a12', file_get_contents('/path/to/private.key'));
然后,您可以通过调用令牌生成器上的generate()
方法来检索生成的JWT令牌
$token = $generator->generate();
这将返回一个字符串令牌,可用于需要JWT的Bearer身份验证的Vonage API。
示例
生成具有特定生存期的令牌
默认情况下,Vonage JWT令牌在生成后具有15分钟的生存期。在令牌有效期应不同的情况下,您可以通过调用令牌生成器上的setTTL()
方法并传递令牌应有效的秒数来覆盖此设置。
$generator->setTTL(30 * 60); // Set expiration to 30 minutes after token creation
设置ACLs
Vonage JWT默认对所有应用程序路径提供完全访问权限,但在客户端可能需要受限访问的情况下,这可能不是理想的选择。您可以通过使用setPaths()
或addPath()
方法批量设置路径信息,或在更流畅的接口中添加单个路径来指定JWT令牌有效的路径。
// Set paths in bulk $generator->setPaths([ '/*/users/**', '/*/conversations/**' ]); // Set paths individually $generator->addPath('/*/users/**'); $generator->addPath('/*/conversations/**');
有关分配ACL信息的更多信息,请参阅如何在Vonage开发者平台上生成JWT