Blog
10 min di lettura
|
10 gen 2023

Node blockchain via JSON-RPC: guida PHP, Python e JS

Node blockchain via JSON-RPC: guida PHP, Python e JS — articolo completo sul blog Chaingateway: API, pagamenti e integrazioni.

Capitoli
C
Chaingateway Team
Esperti di blockchain

JSON-RPC è un protocollo di remote procedure call (RPC) codificato in JSON. È un protocollo leggero che consente la trasmissione di dati tra un client e un server, in questo caso un node blockchain. JSON-RPC viene tipicamente usato per interagire con sistemi decentralizzati come le reti blockchain, e può essere usato per inviare transazioni, interrogare la blockchain per ottenere informazioni, e gestire account sulla rete.

In questo articolo esploreremo le basi di JSON-RPC e come può essere usato per interagire con i node blockchain. Forniremo anche codice di esempio in PHP, Python e JavaScript per aiutarvi a iniziare.

Cos’è JSON-RPC?

JSON-RPC è un protocollo di remote procedure call che usa JSON per codificare le sue chiamate e risposte. È progettato per essere leggero e facile da implementare, il che lo rende una scelta popolare per interagire con sistemi decentralizzati come le reti blockchain.

Il protocollo JSON-RPC definisce una serie di comandi, o “metodi”, che possono essere usati per interagire con il node blockchain. Questi metodi includono l’invio di transazioni, l’interrogazione della blockchain per ottenere informazioni, e la gestione di account sulla rete.

Come usare JSON-RPC per interagire con i node blockchain

Per usare JSON-RPC e interagire con un node blockchain, dovrete prima stabilire una connessione al node. La connessione può essere stabilita usando varie librerie in diversi linguaggi di programmazione, come HTTP, WebSocket, ecc.

Una volta stabilita la connessione, potete iniziare a inviare richieste JSON-RPC al node blockchain. Le richieste assumono la forma di oggetti JSON e includono un campo “method”, che specifica l’azione da compiere, e un campo “params”, che contiene qualsiasi informazione aggiuntiva necessaria per completare la richiesta.

Anche la response sarà in formato JSON; includerà un campo “result”, che contiene il risultato della richiesta, e un campo “error”, che conterrà eventuali messaggi di errore.

Ecco un esempio di richiesta JSON-RPC per ottenere il numero di block attuale sulla blockchain Ethereum:

<pre class="wp-block-code">```
`{ "jsonrpc": "2.0", "method": "eth_blockNumber", "params": [], "id": 1}`
E la response sarà simile a questa
```
`{    "jsonrpc": "2.0",    "id": 1,    "result": "0x4b7"}`
```
```

## Codice di esempio in PHP, Python e JavaScript

Ecco un esempio di come inviare una richiesta JSON-RPC usando la libreria PHP `curl`:

```
```
``
```
```

Ecco un esempio di come inviare una richiesta JSON-RPC usando la libreria Python `requests`:

```
```
import requests headers = {'content-type': 'application/json'}
data = '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
response = requests.post('http://localhost:8545', headers=headers, data=data)

print(response.json())
```
```

Ed ecco un esempio di come inviare una richiesta JSON-RPC usando la funzione JavaScript `fetch`:

```
```
fetch('http://localhost:8545',{
 method: 'POST',
 headers: { 'Content-Type': 'application/json' },
 body: JSON.stringify({
 jsonrpc: '2.0',
 method: 'eth_blockNumber',
 params: [],
 id: 1
 })
})
 .then(response => response.json())
 .then(console.log)
 .catch(console.error);
```
```

Vale la pena notare che gli esempi sopra sono semplici richieste GET per ottenere il numero di block attuale sulla blockchain ethereum; potete usare vari altri metodi per svolgere altri compiti come inviare transazioni, creare account e molto altro.

Comprendendo le basi di JSON-RPC e come può essere usato per interagire con i node blockchain, sarete in grado di creare applicazioni decentralizzate che sfruttano la sicurezza e l'immutabilità offerte dalla tecnologia blockchain. Con l'aiuto del codice di esempio fornito, sarete in grado di inviare richieste JSON-RPC a un node blockchain con facilità e iniziare a costruire la vostra applicazione decentralizzata.

Pronto a costruirlo da solo? Ottieni la tua API key — prova di 7 giorni, senza carta — oppure consulta Blockchain API per il riferimento completo degli endpoint.

C
Chaingateway Team
Esperti di blockchain

Il team di Chaingateway si impegna a semplificare l'integrazione blockchain per sviluppatori di tutto il mondo.