php-aria2 JSONRPC来自服务器的空回复

时间:2013-04-29 11:28:39

标签: rpc json-rpc aria2

我使用php-aria2下载远程文件。但是对127.0.0.1:8100/jsonrpc的所有请求都返回null。 aria2c在命令行中运行良好。

当我从命令行运行时

curl http://127.0.0.1:6800/jsonrpc -H "Content-Type: application/json" -H "Accept: application/json" --data '{{"jsonrpc": "2.0","id":1, "method": "aria2.getGlobalStat", "params":[]}' -G

我得到了:

  

curl:(52)来自服务器的空回复

有人知道如何解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

简单修复是删除冗余“{”并使用POST而不是GET:

curl http://127.0.0.1:6800/jsonrpc -H "Content-Type: application/json" -H "Accept: application/json" --data '{"jsonrpc": "2.0","id":1, "method": "aria2.getGlobalStat", "params":[]}'

aria2在GET请求中支持JSON-RPC,但需要对其进行正确编码。见http://aria2.sourceforge.net/manual/en/html/aria2c.html#json-rpc-using-http-get

答案 1 :(得分:0)

curl http://127.0.0.1:6800/jsonrpc --data "{\"jsonrpc\": \"2.0\",\"id\":1, \"method\": \"aria2.getGlobalStat\", \"params\":[]}"

curl http://127.0.0.1:6800/jsonrpc --data "{"""jsonrpc""": """2.0""","""id""":1, """method""": """aria2.getGlobalStat""", """params""":[]}"

答案 2 :(得分:0)

curl -H 'Content-Type:application/json' -d '{"jsonrpc":"2.0","id":"qwer","method":"aria2.getGlobalStat", "params": []}' http://localhost:6800/jsonrpc

如果我们--rpc-secret = TOKEN需要这个

curl -H 'Content-Type:application/json' -d '{"jsonrpc":"2.0","id":"qwer","method":"aria2.getGlobalStat", "params": ["token:TOKEN"]}' http://localhost:6800/jsonrpc