---

概述: 用Go查询以太坊区块。

---

# 查询区块

正如我们所见,您可以有两种方式查询区块信息。

#### 区块头

您可以调用客户端的`HeadByNumber`来返回有关一个区块的头信息。若您传入`nil`,它将返回最新的区块头。

```go

header, err := client.HeaderByNumber(context.Background(), nil)

if err != nil {

log.Fatal(err)

}

fmt.Println(header.Number.String()) // 5671744

```

#### 完整区块

调用客户端的`BlockByNumber`方法来获得完整区块。您可以读取该区块的所有内容和元数据,例如,区块号,区块时间戳,区块摘要,区块难度以及交易列表等等。

```go

blockNumber := big.NewInt(5671744)

block, err := client.BlockByNumber(context.Background(), blockNumber)

if err != nil {

log.Fatal(err)

}

fmt.Println(block.Number().Uint64()) // 5671744

fmt.Println(block.Time().Uint64()) // 1527211625

fmt.Println(block.Difficulty().Uint64()) // 3217000136609065

fmt.Println(block.Hash().Hex()) // 0x9e8751ebb5069389b855bba72d94902cc385042661498a415979b7b6ee9ba4b9

fmt.Println(len(block.Transactions())) // 144

```

调用`Transaction`只返回一个区块的交易数目。

```go

count, err := client.TransactionCount(context.Background(), block.Hash())

if err != nil {

log.Fatal(err)

}

fmt.Println(count) // 144

```

在下个章节,我们将学习查询区块中的交易。

### 完整代码

```go

package main

import (

"context"

"fmt"

"log"

"math/big"

"github.com/ethereum/go-ethereum/ethclient"

)

func main() {

client, err := ethclient.Dial("https://mainnet.infura.io")

if err != nil {

log.Fatal(err)

}

header, err := client.HeaderByNumber(context.Background(), nil)

if err != nil {

log.Fatal(err)

}

fmt.Println(header.Number.String()) // 5671744

blockNumber := big.NewInt(5671744)

block, err := client.BlockByNumber(context.Background(), blockNumber)

if err != nil {

log.Fatal(err)

}

fmt.Println(block.Number().Uint64()) // 5671744

fmt.Println(block.Time().Uint64()) // 1527211625

fmt.Println(block.Difficulty().Uint64()) // 3217000136609065

fmt.Println(block.Hash().Hex()) // 0x9e8751ebb5069389b855bba72d94902cc385042661498a415979b7b6ee9ba4b9

fmt.Println(len(block.Transactions())) // 144

count, err := client.TransactionCount(context.Background(), block.Hash())

if err != nil {

log.Fatal(err)

}

fmt.Println(count) // 144

}

```

如何查询以太信道接口_查询区块相关推荐

  1. 如何查询以太信道接口_浅谈百兆千兆以太网物理层

    你知道以下几个问题的答案吗?试着回答看看? 网线有多少类?有什么区别? 百兆网实际信号频率是多少? 千兆网实际信号频率是多少? 以太网信号是模拟的?数字的? 以太网一致性测试的意义? 以太网是什么? ...

  2. 用sql查询姓名和身份证_查询,更新和身份

    在本系列的第一篇文章中,我讨论了RDBMS作为Java™对象存储解决方案的失败. 正如我所解释的那样,在当今的面向对象的世界中,像db4o这样的对象数据库可以为面向对象的开发人员提供更多的功能,而不仅 ...

  3. 火车飞机票接口_查询火车/机票和机票的申请

    火车飞机票接口 泛华 (TransChina) Application For Querying Train/Flights and Tickets. 查询火车/机票和机票的应用程序. View de ...

  4. 根据IP查询所在城市接口(查询用户所在城市)

    最近项目有用到定位用户客户端打开页面时所在的城市的需求,找到如下接口,做个记录 文章为转载 设计蜂巢IP地址查询接口:http://www.hujuntao.com/api/ip/ip.php 腾讯I ...

  5. 在mysql查询库和表_查询mysql 库和表占的大小

    use information_schema; select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables; ...

  6. 苹果笔记本怎么查看计算机基本信息,如何查询苹果电脑型号_查询苹果电脑型号的方法...

    新买入苹果电脑后无法确认是什么型号?虽然可以通过电脑外箱和机身标签识别,但此不够内容不够详细.那么还有什么办法查询苹果电脑型号呢?Mac的机型信息并不是直接可以在电脑的系统信息中查询到,而是根据Mac ...

  7. mysql查询学生成绩语句_查询每个学生的各科成绩sql语句

    展开全部 1.查询每个学生的各科成绩sql语句: select a.studentid,a.name,a.sex,v1.score as '语文',v2.score as '数学', v3.score ...

  8. mysql查询男女平均年龄_查询计算机系学生的姓名、性别和年龄

    [填空题]用 insert命令向学生表student里插入一条新记录:学号为18007,姓名为:张飞驰,男,20岁,师范系 () into student(sno,sname,sex,sdept) v ...

  9. mysql查询不及格的学生_查询“数据库”不及格的学生的学号和成绩。

    [单选题]在下列传输介质中,错误率最低的是() [单选题]The followings are some of the potential risks generally existing in ja ...

最新文章

  1. 陕西打造12项精品体育赛事 加快建设体育强省
  2. 粒子滤波 演示与opencv代码
  3. C++输入、输出优化模板整理
  4. python获取电脑几核几线程_python编程测试电脑开启最大线程数实例代码
  5. RFileWriteStream 写入汉字
  6. Redis和DB数据一致性解决方案
  7. MATLAB中使用LIBSVM进行SVM参数寻优
  8. JAVA并发,线程异常捕获
  9. VMware虚拟机中ubuntu的磁盘怎么扩容
  10. Java 异常丢失及finally子句
  11. 十二、Object类
  12. 朱丹超级搜索术笔记:百度搜索相关的技巧
  13. vue 下载pdf文件
  14. 普莱得电器递交注册:上半年营收3.7亿 拟募资5.6亿
  15. 白细胞直方图C语言,白细胞三分群及其直方图
  16. YY 0709|视觉报警信号的要求和测试方法
  17. 可扩展的交互式可视化框架,用于衡量新闻中的性别偏见
  18. Android手机QQ的UI自动化实践,死磕原理
  19. 图扑软件数字孪生海上风电 | 向海图强,奋楫争先
  20. 如何使用MongoDB Go驱动程序在MongoDB中使用Go

热门文章

  1. A Survey of Deep Learning-based Object Detection论文翻译 + 阅读笔记
  2. hvv知识点(基础)
  3. 安卓分屏模式的简单适配
  4. 前端基础——css进阶(三)
  5. 第1090期AI100_机器学习日报(2017-09-12)
  6. 人工智能对金融业的影响_人工智能如何改变金融业
  7. java求循环节长度
  8. 【HIN】异质信息网络分析与应用综述
  9. 2021东三省数学建模竞赛a题
  10. Java8 时间日期使用总结