Bitcointalk · Command Line and JSON-RPC

中本聪,2010 年 2 月 23 日

SN-0367 已核对来源,附原文与上下文。

阅读语言
中文译文

SVN 上的 0.2.6 版现在可以作为守护进程运行,并用命令行或 JSON-RPC 控制。

在 Linux 上需要装 libgtk2.0-0,但不需要运行 GUI。希望 gtk 能在没有窗口系统的情况下安装。

以守护进程方式启动的命令是: bitcoin -daemon [switches...]

或者,既正常运行 UI、又能用命令行或 JSON-RPC 控制的话,用 "-server" 开关。 bitcoin -server [switches...]

无论哪个开关,它都会运行一个 HTTP JSON-RPC 服务器,接受 127.0.0.1:8332 上的本地套接字连接。端口绑定在回环上,只能从本机访问,但任何账户都可以,不限运行它的那个用户。

用命令行控制它的接口是:一个不带任何开关的命令名,后跟参数(如有)。 bitcoin [params...]

例如: bitcoin getinfo bitcoin getdifficulty bitcoin setgenerate true bitcoin stop

它是一个简单的 JSON-RPC 客户端,会打印 JSON 结果。命令列表见 rpc.cpp。

Web 应用或任何自动化程序一般直接用 JSON-RPC,不用命令行。主流语言都有 JSON-RPC 库。在 PHP、Python 这类脚本语言里,语法就像调用本地函数一样自然。

ORIGINAL · 英文原文
Version 0.2.6 on SVN can now run as a daemon and be controlled by command line or JSON-RPC.

On Linux it needs libgtk2.0-0 installed, but does not need a GUI running.  Hopefully gtk can be installed without having a windowing system installed.

The command to start as a daemon is:
bitcoin -daemon [switches...]

Or, to run the UI normally and also be able to control it from command line or JSON-RPC, use the "-server" switch.
bitcoin -server [switches...]

With either switch, it runs an HTTP JSON-RPC server that accepts local socket connections on 127.0.0.1:8332.  The port is bound to loopback and can only be accessed from the local machine, but from any account, not just the user it's running under.

To control it from the command line, the interface is a command name without any switches, followed by parameters if any.
bitcoin <command> [params...]

For example:
bitcoin getinfo
bitcoin getdifficulty
bitcoin setgenerate true
bitcoin stop

It's a simple JSON-RPC client and prints the JSON result.  Look at rpc.cpp for the list of commands.

Web apps or anything automated will normally use JSON-RPC directly, not command line.  There are JSON-RPC libraries for all the major languages.  In script languages like PHP and Python the syntax is as natural as calling a local function.
上下文
← 上一条 SN-0367 · 当前 下一条 → 在档案中查看完整主题串 →
来源
Bitcointalk 原始链接 ↗ 记录编号 SN-0367