教程 | 教你用几行代码搞定一个以太坊 dApp 活动列表

在以太坊上开发的过程应该是非常简单的。使用 Amberdata.io 可将你的 dApp 快速投入生产。我们来带大家走一遍开发一款简单的以太坊 dApp 的流程,这款 dApp 用于让用户了解一个账户的详细活动列表。

将 Amberdata 的 API 接入你的 dApp 非常简单。点击链接即可查看演示:https://amberdata.github.io/amberdata-example-dapp/

一、构建一个简单的 dApp

如何使用我们的端点开发一个简单的 dApp:

地址元数据——某个地址的元数据:

地址交易——某个账户的历史交易记录:

地址函数——地址发送或接收的内部消息:

地址日志——合约输入的日志:

合约函数——来自 abi 的合约函数名称和签名:

这是用来做什么的?

快速获取有关任何帐户或合约的历史动态

确定合约或地址类型

简单的 dApp 集成

无需运行 geth 或 parity 节点

二、步骤解析

第 1 步:获取免费的 Amberdata API 密钥,调用 gas 数据端点

访问 https://amberdata.io/pricing,点击“Get Started”,获取一个免费的开发者 API 密钥,接下来的几个步骤中都需要这个密钥来获取数据。



第 2 步:调用第一个端点:地址元数据(确定地址类型)

使用 Axios 和 Amberdata API,可以轻松请求以太坊地址元数据。 请参阅以下代码段:


看我们感兴趣的字段。

firstSeen  - 这是地址首次出现在网络上的时间。

type  - 是外部帐户(EOA)还是合约? (就本教程而言,这是我们最感兴趣的字段)


第 3 步:调用接下来的 3 个端点:地址交易、地址日志、地址函数

有两种方法可以实现这一点:发送三个单独的请求,或者使用 Javascript 的 Promise.all()来充分利用并行请求。


大家可以在我们的 API 文档中查看完整的回复:https://docs.amberdata.io/reference/addresses 但是现在我将重点介绍这个例子所需的关键数据字段。

交易

我们需要从响应中获取 hash 和 value:


日志

对于日志,我们正在寻找 topics 和 transactionHash 字段:


函数

使用函数的话,我们需要 transactionHash 和 input 字段



第 4 步:调用最后一个端点(仅适用于合约):合约函数

在第 2 步中,我们确定了地址的类型。 如果它是一个合约,那么我们希望将函数的完整十六进制签名与人类可读的名称相匹配。

把这样的:0xa9059cbb0000000000000000000000000a23 ......

变成这样的:transfer(address,uint...

所以我们可以像这样展示方法名称:


三、搞定!

试试看将以太坊活动信息添加到 dApp 或项目中。 如果将我们的 API 集成到其中,请将链接发送给我们,我们将对进行展示!

这只是可以使用 Amberdata API 进行开发的众多方法之一。 在接下来的几周内,我们将分享更多教程,敬请期待!


Amberdata 是用于监测、搜索、分析及保护区块链的高级数据分析平台。我们致力于收集、处理并搭建 API 来帮助人们解读区块链信息。大家可以通过我们的 API 文档来查看这些图表的数据源,也可以将我们的机器人( Crypto Slack )添加到 Slack 中来获取某种加密货币的实时市场数据(价格、走势等等)。

关注以下渠道了解更多Amberdata.io相关信息:

网站:https://amberdata.io/

推特: Amberdataio

官方微信号:amberdata (加入中国社群)

微信公众号:Amberdata(ID:amberdata_china)

你可能感兴趣的:(教程 | 教你用几行代码搞定一个以太坊 dApp 活动列表)