alorel / dropbox-v2-php
Dropbox v2 API 的 PHP SDK
Requires
- aloframework/common: ^1.3 || ^2.0
- guzzlehttp/guzzle: ^6.0
- guzzlehttp/psr7: ^1.0
Requires (Dev)
- alorel/phpunit-auto-rerun: ^0.1
- phpunit/phpunit: ^5.0
- ramsey/uuid: ^3.5
- raveren/kint: ^1.0
README
在 PHP 5.6-7.1 和 HHVM 3.18 上进行了测试。有关最准确、最新的版本列表,请参阅CI 构建页面。
需要维护者!
[2017年2月10日] 很遗憾,我没有时间维护此 SDK。我预计它至少在功能上不会过时一年,但它不会添加任何新功能。如果您感兴趣,请提交问题。
Dropbox v2 API 的 PHP SDK。如果您还没有尝试 Dropbox,试试吧 - 它很棒!
目录
安装
安装只能通过 Composer 完成。
快速版本
composer require alorel/dropbox-v2-php
更详细的版本
该包仍处于其 0.x
开发阶段,因此将其作为 ^
依赖项添加,例如 "alorel/dropbox-v2-php":"^0.1"
将严重限制您收到的更新量,因为根据 semver 规范,0.2
允许与 0.1
不向后兼容。虽然我无法保证如果您修改受保护的方法并派生自己的子类,则可以保证 完全 向后兼容,但我保证公共 API 将保持向后兼容。因此,如果您仅使用应用程序中的 raw
方法,例如。
$options = new UploadOptions(); //set your options (new Upload())->raw('/file.txt', 'data', $options);
您可以在 composer.json 中安全地添加以下依赖项
{ "require": { "alorel/dropbox-v2-php": ">=0.4 <1.0" } }
此外,composer outdated
是在 0.x
开发阶段期间要了解的有用的命令!
使用方法
每个 Dropbox API 操作都位于 \Alorel\Dropbox\Operation 命名空间中,并且是 API 端点的类名。然而,有几个例外,例如,对于 https://content.dropboxapi.com/2/files/upload_session/start
的类是 \Alorel\Dropbox\Operation\Files\UploadSession\Start
。
所有操作类都继承自 AbstractOperation 构造函数
/** * Operation constructor. * * @param bool $async Whether requests should be asynchronous * @param string $accessToken Our access token */ public function __construct($async = null, string $accessToken = null) {}
第一个参数是一个布尔值,用于确定操作是否应同步或异步运行(默认为同步),第二个是用户授权您的应用程序时创建的访问令牌。这两个都可以通过 AbstractOperation::setDefaultToken() 和 AbstractOperation::setDefaultAsync() 分别设置默认值。
目前唯一支持的请求方式是使用相应操作类的 raw
方法,该方法在异步模式下将返回一个 PromiseInterface
实例,在同步模式下将返回一个 ResponseInterface
实例。有关承诺和响应的更多信息,请参阅 guzzlephp.org。
在未来的版本中,我将添加“管理”类,它们将自动格式化响应。
支持的API操作
除非另有说明,否则所有当前不支持的操作将在未来的版本中添加。
文件
所有除了
- /alpha/get_metadata | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /alpha/upload | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/add | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/overwrite | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/remove | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/template/get | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/template/list | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
- /properties/update | 在Dropbox的Beta/Alpha版本中 - 稳定后将实现
用户
所有
API文档
0.4 | 0.3.3 | 0.2 | 0.1.1 | 0.1
链接
- 变更日志
- Dropbox HTTP API文档(此库仅是HTTP请求包装器)
- Dropbox API探索器