1 Home
Syn Naulaid edited this page 2024-10-08 02:47:07 +00:00

wChainGPRC

Intro:

wChainGPRC adalah implementasi sederhana dari sebuah server JSON-RPC yang berfungsi untuk melakukan berbagai operasi blockchain, termasuk mendapatkan informasi Chain ID, mengecek saldo, mengelola wallet, dan memantau transaksi. Proyek ini bertujuan untuk menyediakan antarmuka testing yang mudah digunakan untuk berbagai fungsi dasar blockchain.

Proyek ini didesain untuk penggunaan uji coba, terutama bagi pengembang yang ingin mempelajari interaksi dasar antara JSON-RPC dan blockchain. Dengan menggunakan curl, Anda dapat menguji berbagai metode dan memastikan alur kerja blockchain berjalan sesuai ekspektasi sebelum diterapkan ke lingkungan produksi yang lebih kompleks.


Deskripsi:

wChainGPRC memiliki beberapa fungsi utama yang dapat digunakan untuk pengujian seperti mendapatkan informasi Chain ID, block terakhir, saldo wallet, menambahkan saldo, dan sebagainya. Ini dirancang dengan tujuan agar pengembang dapat dengan mudah memanggil metode blockchain dengan menggunakan JSON-RPC. Setiap metode mengikuti spesifikasi JSON-RPC 2.0 dan dapat diakses melalui permintaan POST dengan endpoint yang tersedia.

Proyek ini memiliki beberapa metode JSON-RPC antara lain:

  1. GetChainId
  2. eth_chainId
  3. eth_blockNumber
  4. net_version
  5. eth_getBalance
  6. eth_getBlockByNumber
  7. addWallets
  8. addBalance
  9. eth_gasPrice
  10. eth_estimateGas
  11. eth_getTransactionCount

Anda dapat melakukan pengujian fungsi-fungsi tersebut menggunakan perintah curl untuk simulasi pada blockchain sederhana ini.


Disclaimer:

wChainGPRC bukan proyek yang ditujukan untuk penggunaan di lingkungan produksi. Proyek ini hanya untuk tujuan pengujian dan edukasi. Kami tidak bertanggung jawab atas segala kerusakan atau kehilangan data yang disebabkan oleh penggunaan proyek ini di luar konteks pengujian. Penggunaan proyek ini untuk sistem blockchain nyata atau terkait transaksi kripto dengan aset nyata tidak disarankan.


Dokumentasi Penggunaan untuk Test dengan curl

Berikut ini adalah dokumentasi lengkap cara menggunakan setiap metode JSON-RPC yang tersedia dalam proyek wChainGPRC. Pastikan server Anda sudah berjalan di port 8000 dengan menjalankan node server.js.

1. GetChainId

Endpoint: http://localhost:8000/blockchain

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "GetChainId",
    "params": [],
    "id": 1
}'

2. eth_chainId

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_chainId",
    "params": [],
    "id": 2
}'

3. eth_blockNumber

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_blockNumber",
    "params": [],
    "id": 3
}'

4. net_version

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "net_version",
    "params": [],
    "id": 4
}'

5. eth_getBalance

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBalance",
    "params": ["0x1234567890abcdef1234567890abcdef12345678", "latest"],
    "id": 5
}'

6. eth_getBlockByNumber

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBlockByNumber",
    "params": ["0x1", true],
    "id": 6
}'

7. addWallets

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "addWallets",
    "params": [2],
    "id": 7
}'

8. addBalance

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "addBalance",
    "params": ["0x1234567890abcdef1234567890abcdef12345678", "1000"],
    "id": 8
}'

9. eth_gasPrice

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_gasPrice",
    "params": [],
    "id": 9
}'

10. eth_estimateGas

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_estimateGas",
    "params": [{"from": "0x1234567890abcdef1234567890abcdef12345678", "to": "0xabcdefabcdefabcdefabcdefabcdefabcdef", "value": "0x9184e72a000"}],
    "id": 10
}'

11. eth_getTransactionCount

Contoh Penggunaan:

curl -X POST http://localhost:8000/blockchain \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionCount",
    "params": ["0x1234567890abcdef1234567890abcdef12345678", "latest"],
    "id": 11
}'

Dengan mengikuti dokumentasi ini, Anda dapat menguji proyek wChainGPRC menggunakan curl.