Comment utiliser JSON-RPC en C ++ sous Linux?

Saku

Comment utiliser JSON-RPC en C ++ sous Linux?


Quelle bibliothèque dois-je utiliser pour JSON? Où est l’exemple d’appel RPC? Comment utiliser RPC de bitcoind ou bitcoin-cli? ou meilleure API Electrum pour obtenir toutes les nouvelles transactions (peut-être en attente) qui apparaissent dans Bitcoin net?

KJ O

Comme popen ()? Ou système ()?

Réponses


 Geremia

Même s’il s’agit d’une bibliothèque C, vous pouvez également utiliser Jansson dans les applications C ++. Voir: https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)#C


 Albert s

Je ne sais pas pourquoi vous avez choisi C ++
Si vous allez construire quelque chose là où vous avez besoin de la vitesse du C ++, restez-y naturellement.
Sinon, pour effectuer simplement certains appels RPC, utilisez quelque chose de plus simple comme python ou PHP.

Voici un tutoriel sur la façon de faire des appels RPC via python:
Programmation Bitcoin et Blockchain # 007 – RPC via Python

Et via PHP:
Programmation Bitcoin et Blockchain # 005 – RPC via PHP


 onepix

Comment utiliser RPC de bitcoind ou bitcoin-cli?

  1. bitcoind – bitcoin deamon = valeur fondamentale du logiciel (bitcoind -printtoconsole -debug = 1)
  2. bitcoin-cli – interface de ligne de commande bitcoin = vous permet de « questionner » la blockchain que vous aviez précédemment téléchargée avec bitcoind. (bitcoin-cli getinfo)

Bitcoind fournit donc l ‘ »interface » RPC dans laquelle vous pouvez interroger avec bitcoin-cli
(ou une bibliothèque en c ++ vous trouverez …).
Vous devez exécuter bitcoind avant d’utiliser bitcoin-cli.

Fondamentalement, bitcoin-cli communique avec votre nœud bitcoind, c’est-à-dire votre état de blockchain actuel.

bitcoin-qt – Logiciel graphique bitcoin = bitcoind + interface graphique
(Vous pouvez trouver une console graphique intégrée dans laquelle vous utiliserez la commande bitcoin-cli)

 

(sous, #en, ++, C, comment, JSON-RPC, Linux, utiliser

 

yahoo

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *