冰梭将传输能力抽象为两种开放形式,开发者可根据场景自主选择,流量均不经过应用服务器。
从创建应用到完成传输,只需四步。
根据场景选择 P2P 直传或安全中转,引入对应 SDK。
使用 HMAC-SHA256 签名,调用创建传输任务 API。
P2P 直连传输文件,或通过中转链接下载。
以 Node.js 为例,创建任务后通过 WebRTC 直连传输。
// 1. 创建 P2P 传输任务 const iceshuttle = require('iceshuttle-sdk'); const client = new iceshuttle.Client({ appKey: 'ak_xxxxxxxx', appSecret: 'your_app_secret' }); // 2. 发起传输 const task = await client.createTransfer({ type: 'p2p', fileName: 'report.pdf', fileSize: 1024 * 1024 * 50 // 50MB }); // 3. 获取接收链接,分享给对方 console.log('接收链接: ' + task.signalingUrl); console.log('信令Token: ' + task.signalingToken);
以 Python 为例,创建中转任务后上传文件,获取可多次下载的链接。
from iceshuttle import Client client = Client(app_key='ak_xxxxxxxx', app_secret='your_app_secret') # 1. 创建安全中转任务 task = client.create_transfer( type='relay', file_name='backup.zip', file_size=1024 * 1024 * 500, # 500MB max_receive_count=5, expire_hours=72 ) # 2. 上传文件到中转地址 client.upload_file(task.upload_url, './backup.zip') # 3. 分享下载链接 print(f'下载链接: {task.download_link}')
所有 API 均使用 HMAC-SHA256 签名认证,支持 RESTful 风格调用。
| 接口 | 方法 | 说明 |
|---|---|---|
/api/open/transfer/create |
POST | 创建传输任务(P2P / 中转) |
/api/open/transfer/{id} |
GET | 查询传输任务状态 |
/api/open/transfer/{id}/ice |
GET | 获取 P2P 信令和 ICE 配置 |
/api/open/transfer/{id}/upload |
POST | 上传文件到中转存储(分块) |
/api/open/transfer/{id}/download |
GET | 获取中转下载链接 |
/api/open/transfer/{id}/complete |
POST | 标记传输完成 |
提供五种语言 SDK,覆盖主流开发场景。
从快速入门到完整 API 参考,助您顺利完成接入。
创建应用,获取 AppKey,三分钟完成接入。
前往创建应用