TorrServer API完全手册:从基础调用到高级集成
TorrServer API完全手册从基础调用到高级集成【免费下载链接】TorrServerTorrent stream server项目地址: https://gitcode.com/gh_mirrors/to/TorrServerTorrServer是一款功能强大的Torrent流服务器通过其丰富的API接口开发者可以轻松实现种子管理、媒体流播放、服务器配置等核心功能。本手册将详细介绍TorrServer API的基础调用方法、核心接口参数及高级集成技巧帮助新手快速上手并掌握高级应用场景。TorrServer官方标志采用闪电元素设计象征高速流媒体传输能力一、API基础入门1.1 快速访问Swagger文档TorrServer内置Swagger接口文档启动服务器后可通过以下路径访问完整API列表http://localhost:8080/swagger/index.html文档定义文件位于项目 server/docs/swagger.yaml包含所有接口的请求参数、响应格式及示例。1.2 API通用规范基础路径所有API接口均以/为根路径数据格式请求与响应均使用JSON格式认证方式支持BasicAuth认证部分接口需在请求头中携带认证信息状态码200请求成功400参数错误401未授权访问500服务器内部错误二、核心功能接口详解2.1 种子管理接口添加种子请求POST /torrents Content-Type: application/json { action: add, link: magnet:?xturn:btih:xxx, title: 示例视频, category: movie, save_to_db: true }响应{ hash: abc123def456, name: 示例视频, stat: 1, stat_string: TorrentGettingInfo }接口定义位于 server/web/api/torrents.go支持通过磁力链接、种子文件URL或信息哈希添加种子获取种子列表请求POST /torrents Content-Type: application/json { action: list }响应返回所有种子的基本信息数组包含哈希、名称、大小、状态等字段2.2 媒体流播放接口直接播放种子文件请求GET /play/{hash}/{id}hash种子信息哈希id文件在种子中的索引响应流式返回媒体文件数据可直接用于视频播放器生成M3U播放列表请求GET /playlist?hashabc123def456fromlasttruehash种子信息哈希fromlast是否从上次播放位置继续响应返回M3U格式的播放列表包含媒体流URL及元数据2.3 服务器配置接口获取当前设置请求POST /settings Content-Type: application/json { action: get }响应返回服务器完整配置包括缓存大小、端口设置、DLNA开关等详细配置项定义见 settings.BTSets更新存储配置请求POST /storage/settings Content-Type: application/json { settings: json, viewed: json }settings设置存储类型json/bboltviewed观看历史存储类型json/bbolt此接口定义于 server/web/api/storage.go修改后需重启服务器生效三、高级应用场景3.1 种子搜索集成TorrServer提供两种搜索API可集成到应用中实现种子资源检索Rutor搜索GET /search?queryexamplemovieTorznab搜索GET /torznab/search?queryexamplemovie响应均返回符合条件的种子列表格式遵循 models.TorrentDetails 定义包含名称、大小、种子数、磁力链接等信息。3.2 缓存管理与性能优化通过缓存接口可实时监控和管理种子缓存状态POST /cache Content-Type: application/json { action: get, hash: abc123def456 }响应将返回指定种子的缓存状态包括总容量与已用空间片段下载状态读取器信息种子连接状态缓存管理相关代码位于 server/torr/storage/torrstor/ 目录3.3 批量操作与自动化利用/torrents接口的wipe动作可清空所有种子POST /torrents Content-Type: application/json { action: wipe }结合/viewed接口可实现观看历史管理POST /viewed Content-Type: application/json { action: set, hash: abc123def456, file_index: 0 }四、实用工具接口4.1 服务器状态监控GET /echo返回服务器版本信息可用于健康检查4.2 下载测试GET /download/10生成10MB测试文件用于网络速度测试4.3 媒体信息获取GET /ffp/{hash}/{id}通过ffprobe获取媒体文件详细信息包括编码格式、分辨率、时长等五、常见问题与解决方案Q: 如何处理大文件流式播放卡顿A: 调整预加载缓存设置POST /settings Content-Type: application/json { action: set, sets: { preloadCache: 30, readerReadAHead: 50 } }增加preloadCache预加载百分比和readerReadAHead读取预缓冲百分比可改善播放体验Q: 如何通过API控制服务器开关机A: 使用 shutdown 接口GET /shutdown服务器将在1秒后优雅关闭总结TorrServer API提供了全面的功能覆盖从基础的种子管理到高级的媒体流控制满足不同场景的应用需求。通过Swagger文档和本手册的指引开发者可以快速实现与TorrServer的集成构建功能丰富的流媒体应用。所有API接口的源代码实现可在 server/web/api/ 目录中查看欢迎贡献代码或提出改进建议。【免费下载链接】TorrServerTorrent stream server项目地址: https://gitcode.com/gh_mirrors/to/TorrServer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考