仓库地址 [图片] nanmu42/etherscan-api :guitar: Go bindings to Etherscan.io API | Etherscan Go API库 - nanmu42/etherscan-api GitHub - github.com README [图片] [图片] [图片] [ ..

[以太坊] Golang Etherscan API 库

本贴最后更新于 468 天前,其中的信息可能已经水流花落

仓库地址

README

Build Status
Go Report Card
codecov
GoDoc
English Readme

Etherscan.io API 的 Golang 库,
支持几乎所有功能(accounts, transactions, tokens, contracts, blocks, stats),
所有公共网络(Mainnet, Ropsten, Kovan, Rinkby, Tobalaba)。
本项目只依赖于官方库。 😉

Usage

填入网络选项和 API Key 即可开始使用。 🚀

import (
	"github.com/nanmu42/etherscan-api"
	"fmt"
)

func main() {
	// 创建连接指定网络的客户端
	client := etherscan.New(etherscan.Mainnet, "[your API key]")

	// (可选)按需注册钩子函数,例如用于速率控制
	client.BeforeRequest = func(module, action string, param map[string]interface{}) error {
		// ...
	}
	client.AfterRequest = func(module, action string, param map[string]interface{}, outcome interface{}, requestErr error) {
		// ...
	}

	// 查询账户以太坊余额
	balance, err := client.AccountBalance("0x281055afc982d96fab65b3a49cac8b878184cb16")
	if err != nil {
		panic(err)
	}
	// 余额以 *big.Int 的类型呈现,单位为 wei
	fmt.Println(balance.Int())

	// 查询token余额
	tokenBalance, err := client.TokenBalance("contractAddress", "holderAddress")

	// 查询出入指定地址的ERC20转账列表
	transfers, err := client.ERC20Transfers("contractAddress", "address", startBlock, endBlock, page, offset)
}

客户端方法列表可在GoDoc查询。

Etherscan API Key

API Key 可以在etherscan申请。

Etherscan 的 API 服务是一个公开的社区无偿服务,请避免滥用。
API 的调用速率不能高于 5 次/秒,否则会遭到封禁。

利益声明

我和 Etherscan 没有任何联系。我仅仅是觉得他们的服务很棒,而自己又恰好需要这样一个库。 😄

许可证

MIT

请自由享受开源,欢迎贡献开源。

  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 355 回帖 • 121 关注
  • golang

    Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

    373 引用 • 1237 回帖 • 693 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    58 引用 • 322 回帖
  • 创造

    你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!

    55 引用 • 299 回帖 • 2 关注
回帖
请输入回帖内容...