Aria2 指令生成器

快速组合常用的 Aria2 JSON-RPC 指令,免去手动拼接 curl 指令的麻烦。

  • 支持生成直接查询指令与包装在 sudo -u <user> bash -lc 的形式
  • 可选择是否带入 rpc-secret,并自订下载链接与储存目录

当你需要透过 Aria2 远端管理下载安装务时,本工具能一次整理好查询、添加与删除指令的 JSON-RPC 请求格式。只要调整栏位即可立即生成对应的 curl 指令,无论是否包装 sudo,都可直接复制贴上到终端机执行,大幅降低手动对齐引号与转义字元的出错率。

除了指令生成外,也提供回应解析面板,贴入 aria2.tellActive 的 JSON 结果便能得到任务统计、速度与进度概况,方便你在浏览器端掌握下载状态。建议配合 rpc-secret 保护执行权限,并于操作后使用复制按钮清楚管理指令版本,维持主机安全。

Aria2 是什么?

Aria2 是跨平台的命令列下载工具,支援 HTTP/HTTPS、FTP、SFTP、BitTorrent 与 Metalink。透过 JSON-RPC 介面可让远端主机或 Web UI 控制下载任务,是 NAS、服务器常见的轻量下载管理方案。

常见使用情境
  • 在 VPS / NAS 上集中排程 HTTP / BT 下载
  • 透过自动化脚本批量新增或移除任务
  • 搭配 aria2 RPC + Web UI 远端监控下载状态
  • 与 Sonarr / Radarr / PT 站脚本结合,自动投入下载

本工具解决的问题

JSON-RPC 指令易出错

手动撰写 curl 指令时,需要控制引号、转义字元与 JSON 格式;稍有疏忽就会请求失败。工具依输入栏位自动生成、校验,使命令更可靠。

缺少可视化的回传解析

tellActive 回传的 JSON 资讯繁杂,手动阅读不直觉。贴上后即可整理出状态、速度、连接数与总体摘要,用浏览器即可监控。

使用教学

  1. 在「状态查询指令 / 手动新增任务 / 删除任务」三个区块中,挑选需要操作的流程。
  2. 填入 RPC URL、请求 ID、方法名称、下载链接、rpc-secret、sudo 用户等栏位,未填的会自动带入默认值。
  3. 工具即时生成 curl 指令,确认无误后点「复制」按钮并贴到终端机执行。
  4. 若要监控下载状态,可在「回应解析」处贴上 JSON 回传值,并点击「解析 JSON」获取摘要与表格。
  5. 使用完毕可按「清空」或手动更新栏位,以维持指令与凭证的整洁与安全。

提示:若主机未开启 rpc-secret,请立即设定;若需非 sudo 执行,可取消勾选,工具会自动生成纯 curl 指令。

状态查询指令

aria2.tellActive
输入 JSON 数组格式,例如 ["gid"]
取消勾选可输出不带 sudo 的指令

回应解析

aria2.tellActive result

将 `aria2.tellActive` 或相关查询回传的 JSON 贴在下方,即可整理显示各任务的状态、进度与速度。

解析结果会显示在此处。
GID 状态 进度 速度 连接数
尚未解析数据。

手动新增任务

aria2.addUri
取消勾选可输出不带 sudo 的指令
例如指定输出文件名 {"out":"filename.iso"},符合 JSON 对象格式即可。

删除任务

aria2.remove
删除前请先确认 GID 是否正确。
取消勾选可输出不带 sudo 的指令

常见指令示例

1. 查询目前下载中任务
curl -s -X POST http://127.0.0.1:6800/jsonrpc \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":"ping","method":"aria2.tellActive","params":["token:YOUR_SECRET",[]]}'

若需要以特定用户执行,可将本工具的「sudo 用户」开启,即会输出 sudo -u www bash -lc " 的形式。

2. 新增 BT / HTTP 多来源下载
curl -s -X POST http://127.0.0.1:6800/jsonrpc \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":"manual-add","method":"aria2.addUri","params":["token:YOUR_SECRET",["magnet:?xt=...", "https://example.com/file.iso"],{"dir":"/data/dl","out":"file.iso"}]}'
3. 强制删除异常任务
curl -s -X POST http://127.0.0.1:6800/jsonrpc \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","id":"force-remove","method":"aria2.forceRemove","params":["token:YOUR_SECRET","2089b05ecca3d829"]}'

开发实务故障排除

RPC 连线失败

确认 rpc-listen-port 是否开放、防火墙是否允许、以及 curl 指令的 URL 是否为 http://或https://IP:PORT/jsonrpc。远端主机需开启 --rpc-listen-all=true 才能外网连入。

提示 "Unauthorized"

代表 rpc-secret 未带入或错误。请在工具的「RPC Secret」输入真实值,生成的 payload 会自动在 params 的第一项加上 token:SECRET

JSON 解析失败

若终端机回报 JSON 格式错误,通常是引号被 shell 吃掉。尽量不要手动撰写 JSON,可透过本工具生成;若需手改,请以单引号包住 JSON,并在字串内改用双引号。

下载卡住或速度异常

在回应解析器中贴上 tellActive 结果,检查 statusconnectionsbitfield 等字段。必要时可用 forceRemove + 重新 addUri 重新排队。