Categorygithub.com/everFinance/ethrpc
modulepackage
1.0.4
Repository: https://github.com/everfinance/ethrpc.git
Documentation: pkg.go.dev

# README

Ethrpc

forked from onrik/ethrpc

Golang client for ethereum JSON RPC API.

  • web3_clientVersion
  • web3_sha3
  • net_version
  • net_peerCount
  • net_listening
  • eth_protocolVersion
  • eth_syncing
  • eth_coinbase
  • eth_mining
  • eth_hashrate
  • eth_gasPrice
  • eth_accounts
  • eth_blockNumber
  • eth_getBalance
  • eth_getStorageAt
  • eth_getTransactionCount
  • eth_getBlockTransactionCountByHash
  • eth_getBlockTransactionCountByNumber
  • eth_getUncleCountByBlockHash
  • eth_getUncleCountByBlockNumber
  • eth_getCode
  • eth_sign
  • eth_sendTransaction
  • eth_sendRawTransaction
  • eth_call
  • eth_estimateGas
  • eth_getBlockByHash
  • eth_getBlockByNumber
  • eth_getTransactionByHash
  • eth_getTransactionByBlockHashAndIndex
  • eth_getTransactionByBlockNumberAndIndex
  • eth_getTransactionReceipt
  • eth_pendingTransactions
  • eth_getUncleByBlockHashAndIndex
  • eth_getUncleByBlockNumberAndIndex
  • eth_getCompilers (DEPRECATED)
  • eth_compileLLL (DEPRECATED)
  • eth_compileSolidity (DEPRECATED)
  • eth_compileSerpent (DEPRECATED)
  • eth_newFilter
  • eth_newBlockFilter
  • eth_newPendingTransactionFilter
  • eth_uninstallFilter
  • eth_getFilterChanges
  • eth_getFilterLogs
  • eth_getLogs
  • eth_getWork
  • eth_submitWork
  • eth_submitHashrate
  • eth_getProof
  • db_putString
  • db_getString
  • db_putHex
  • db_getHex
  • shh_post
  • shh_version
  • shh_newIdentity
  • shh_hasIdentity
  • shh_newGroup
  • shh_addToGroup
  • shh_newFilter
  • shh_uninstallFilter
  • shh_getFilterChanges
  • shh_getMessages
Usage:
package main

import (
    "fmt"
    "log"

    "github.com/everFinance/ethrpc"
)

func main() {
    client := ethrpc.New("http://127.0.0.1:8545")

    version, err := client.Web3ClientVersion()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(version)

    // Send 1 eth
    txid, err := client.EthSendTransaction(ethrpc.T{
        From:  "0x6247cf0412c6462da2a51d05139e2a3c6c630f0a",
        To:    "0xcfa202c4268749fbb5136f2b68f7402984ed444b",
        Value: ethrpc.Eth1(),
    })
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(txid)
}

Donate with Ethereum

# Functions

BigToHex covert big.Int to hexadecimal representation.
Eth1 returns 1 ethereum value (10^18 wei).
IntToHex convert int to hexadecimal representation.
New create new rpc client with given url.
NewEthRPC create new rpc client with given url.
ParseBigInt parse hex string value to big.Int.
ParseInt parse hex string value to int.
WithDebug set debug flag.
WithHttpClient set custom http client.
WithLogger set custom logger.

# Structs

Block - block object.
EthError - ethereum error.
EthRPC - Ethereum rpc client.
FilterParams - Filter parameters object.
Log - log object.
Syncing - object with syncing data info.
T - input transaction object.
Transaction - transaction object.
TransactionReceipt - transaction receipt object.

# Interfaces

No description provided by the author