¿Cómo usar JSON-RPC en C++ en Linux?

¿Qué biblioteca debo usar para JSON? ¿Dónde está el ejemplo de llamada RPC? ¿Cómo usar RPC de bitcoind o bitcoin-cli? o una mejor API de Electrum para obtener todas las transacciones nuevas (tal vez pendientes) que aparecen en la red de Bitcoin?

¿Como papa ()? ¿O sistema ()?

Respuestas (4)

¿Cómo usar RPC de bitcoind o bitcoin-cli?

  1. bitcoind - bitcoin deamon = valor central del software (bitcoind -printtoconsole -debug=1)
  2. bitcoin-cli - interfaz de línea de comandos de bitcoin = le permite "consultar" la cadena de bloques que había descargado previamente con bitcoind. (bitcoin-cli getinfo)

Entonces, bitcoind proporciona la "interfaz" de RPC en la que puede consultar con bitcoin-cli
(o una biblioteca en c ++ que encontrará ...).
Debe ejecutar bitcoind antes de usar bitcoin-cli.

Básicamente, bitcoin-cli se comunica con su nodo bitcoind, en otras palabras, su estado actual de blockchain.

bitcoin-qt - Software gráfico de bitcoin = bitcoind + interfaz gráfica
(puede encontrar una consola gráfica integrada en la que usará el comando bitcoin-cli)

Aunque es una biblioteca de C, también puede usar Jansson en aplicaciones de C++. Ver: https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)#C

No estoy seguro de por qué eligió C++.
Si va a construir algo donde necesita la velocidad de C++, es comprensible que siga con eso.
De lo contrario, para simplemente realizar algunas llamadas RPC, use algo más simple como python o PHP.

Aquí hay un tutorial sobre cómo hacer llamadas RPC a través de Python:
Programación de Bitcoin y Blockchain #007 – RPC a través de Python

Y a través de PHP:
Programación de Bitcoin y Blockchain #005 – RPC a través de PHP

Su pregunta directa es sobre una excelente biblioteca JSON-RPC en C ++, y la respuesta directa es:

Pero si quiero apuntar a su intención, aquí hay un envoltorio bien desarrollado para la interfaz Bitcoind-json/rpc . ¡Te ahorrará mucho tiempo!