3个不稳定版本
0.2.0 | 2023年11月29日 |
---|---|
0.1.1 | 2023年11月20日 |
0.1.0 | 2023年7月18日 |
#664 in 异步
每月21次下载
170KB
4.5K SLoC
qbit-api-rs
qBittorrent Web API (适用于4.1以上版本)的异步Rust封装
使用方法
添加依赖项
[dependencies]
qbit-api-rs = "0.1"
或者
cargo add qbit-api-rs
快速入门
use qbit_api_rs::client::QbitClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// initialize client with given username and password
let client = QbitClient::new_with_user_pwd("http://hostname:port", "admin", "adminadmin").unwrap();
// or from environment variable
// QBIT_HOST, QBIT_USERNAME, QBIT_PASSWORD must be set
let client = QbitClient::new_from_env().unwrap();
// login first
client.auth_login().await?;
// call api methods
println!("{}", client.app_version().await?);
//...
Ok(())
}
更多使用方法,请参阅示例。
注意
-
此crate仅提供纯API绑定。没有像令牌过期时重新认证这样的机制。
-
qBitTorrent使用cookie进行认证。所需SID令牌存储在cookie中,一段时间后(默认3600秒)将过期。此过期时间可以在
Options -> WebUI -> Authentication -> Session timeout
中配置。要使SID令牌有效,您可以选择- 在超时期间定期调用登录方法以重新认证。
- 或者只启用
Bypass authentication for clients in whitelisted IP subnets
并为您的IP子网配置,然后您就不再需要调用登录方法。
-
对于4.6.1以上版本,默认凭据不是
admin:adminadmin
。您必须设置自己的凭据,否则qBittorrent将生成一个随机的凭据。有关更多详细信息,请参阅发行说明 -
此crate处于开发初期。将来可能会出现问题。
支持的API
认证
- 登录
- 登出
应用
- 获取应用版本
- 获取API版本
- 获取构建信息
- 关闭应用
- 获取应用首选项
- 设置应用首选项
- 获取默认保存路径
日志
- 获取日志
- 获取对等日志
同步
- 获取主数据
- 获取种子对等数据
传输信息
- 获取全局传输信息
- 获取替代速度限制状态
- 切换替代速度限制
- 获取全局下载限制
- 设置全局下载限制
- 获取全局上传限制
- 设置全局上传限制
- 禁止对等
种子管理
- 获取种子列表
- 获取种子通用属性
- 获取种子追踪器
- 获取种子网站种子
- 获取种子内容
- 获取种子块状态
- 获取种子块哈希
- 暂停种子
- 恢复种子
- 删除种子
- 重新检查种子
- 重新公告种子
- 编辑追踪器
- 移除追踪器
- 添加节点
- 添加新种子
- 将追踪器添加到种子
- 提高种子优先级
- 降低种子优先级
- 最大种子优先级
- 最小种子优先级
- 设置文件优先级
- 获取种子下载限制
- 设置种子下载限制
- 设置种子分享限制
- 获取种子上传限制
- 设置种子上传限制
- 设置种子位置
- 设置种子名称
- 设置种子类别
- 获取所有类别
- 添加新类别
- 编辑类别
- 移除类别
- 添加种子标签
- 移除种子标签
- 获取所有标签
- 创建标签
- 删除标签
- 设置自动种子管理
- 切换顺序下载
- 设置首/末块优先级
- 设置强制启动
- 设置超级种子的
- 重命名文件
- 重命名文件夹
RSS(实验性)
- 添加文件夹
- 添加源
- 移除项目
- 移动项目
- 获取所有项目
- 标记为已读
- 刷新项目
- 设置自动下载规则
- 重命名自动下载规则
- 移除自动下载规则
- 获取所有自动下载规则
- 获取所有符合规则的文章
搜索
- 开始搜索
- 停止搜索
- 获取搜索状态
- 获取搜索结果
- 删除搜索
- 获取搜索插件
- 安装搜索插件
- 卸载搜索插件
- 启用搜索插件
- 更新搜索插件
许可
根据以下之一授权
- Apache License,版本 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
贡献
除非你明确指出,否则根据 Apache-2.0 许可证定义的,任何有意提交以包含在此包中的贡献,都将根据上述方式双重许可,不附加任何额外的条款或条件。
依赖关系
~8–23MB
~320K SLoC