suitcasephp / builder
一个简单易用的PHP SDK构建器。
v1.0.0
2020-03-25 13:56 UTC
Requires
- php: ~7.4
- guzzlehttp/guzzle: ^6.5
- tightenco/collect: ^6.16
Requires (Dev)
- phpunit/phpunit: ^9.0
- squizlabs/php_codesniffer: ^3.5
- symfony/var-dumper: ^5.0
This package is auto-updated.
Last update: 2024-09-19 22:31:26 UTC
README
Suitcase Builder SDK
一个简单易用的PHP SDK构建器。
安装
通过Composer
$ composer require suitcasephp/builder
如何使用
构建SDK
use Suitcase\Builder\SDK; $sdk = SDK::make('https://api.example.com');
向SDK添加资源
$sdk->add('posts', [ 'endpoint' => 'posts', 'allows' => [ 'get', 'find', 'create', 'update', 'delete' ] ]);
如果您想要传递一个遵循默认值的资源
$sdk->add('posts');
这将执行的操作是使用传递的字符串作为名称和端点,并通过默认的允许选项 - 实际上允许所有操作。
选择资源非常简单
$sdk->use('posts');
这将设置SDK上的活动资源,允许您使用允许的操作。如果操作未在资源的allows
数组中注册,则抛出MethodNotAllowed
异常。
在资源上执行操作
$sdk->use('posts')->get(); // return all posts $sdk->use('posts')->find(1); // return the post with an identifier of 1 $sdk->use('posts')->create([]); // create a new post $sdk->use('posts')->update(1, []); // update a post with an identifier of 1 $sdk->use('posts')->delete(1); // delet the post with a identifier of 1
您还可以使用新的append
方法将子资源附加到查询中
$sdk->use('posts')->append('comments')->find(1);
这将返回来自URL /posts/1/comments
的服务器流响应
需要处理认证端点吗?
可以使用此包采取相对简单的方法,首先您必须有一个API令牌或正在使用基本认证
$sdk->use('users')->withAuthHeaders('your-api-token', 'Bearer')->get();
这里发生的事情是,认证头将设置为:Authorization: Bearer your-api-token
并作为头在Guzzle中添加。默认情况下,类型不是必需的,因为它默认为Bearer
,所以如果您正在使用bearer令牌,请省略此部分。
请注意,API认证不是此包的主要目标,它只是在某些场景下受欢迎的附加功能。