keestash / php-sdk
与Keestash交互的SDK
0.0.2
2023-06-25 09:21 UTC
Requires
- php: >=7.4
- ext-json: *
- doganoo/di-services: ^0.0.37
- guzzlehttp/guzzle: ^7
This package is auto-updated.
Last update: 2024-09-27 17:48:59 UTC
README
Keestash SDK是一个代码集合,用于简化与Keestash实例的交互。基本思想是一次性配置SDK,然后轻松地在远程Keestash服务器上创建、更新、删除资源。
SDK仍在开发中。根据需要添加服务类。如果您需要某些功能,请提交pull request或开启支持工单。
安装
使用composer包管理器安装Keestash SDK。
composer install keestash/sdk
使用方法
首先,您需要实现\Keestash\Sdk\Service\Api\ApiCredentialsInterface
接口,以便为SDK提供API URL和凭证。API URL需要用于所有发送到Keestash的请求,而用户哈希和用户令牌并非必须提供。
class ApiCredentialsProvider implements \Keestash\Sdk\Login\Entity\ApiCredentialsInterface { public function getApiUrl(): string { return 'your-keestash.server/api.php'; } public function getUserToken(): ?string { return <userToken>; } public function getUserHash(): ?string { return <userHash>; } }
提供您的Keestash实例的URL后,您可以调用登录端点
$keestashClient = new \Keestash\Sdk\Client\KeestashClient( new GuzzleHttp\Client(), new ApiCredentialsProvider() ); $login = new \Keestash\Sdk\Login\Login($keestashClient); $data = $login->login(<username>, <password>); var_dump($data);
登录端点在成功时返回用户哈希和令牌。您需要这些信息来对所有认证请求进行认证。请确保您的类实现了\Keestash\Sdk\Service\Api\ApiCredentialsInterface
,并使用返回的值进行所有后续请求。
require __DIR__ . '/vendor/autoload.php'; // create credential $c = new \Keestash\Sdk\PasswordManager\Entity\Credential( 'test-password', 'theusername', 'topsecret', 'root', 'https://keestash.com' ); $credential = new \Keestash\Sdk\PasswordManager\Credential\Credential($keestashClient); $credential->create($c); // create folder $folder = new \Keestash\Sdk\PasswordManager\Folder\Folder($keestashClient); $folder->create(new \Keestash\Sdk\PasswordManager\Entity\Folder('test-folder', 'root'));
贡献
欢迎提交pull request。对于重大更改,请首先提交一个issue进行讨论。
请确保根据需要更新测试。