二、ABI是什么、Solidity编译后产生的2种文件

在 Ethereum 智能合约能够被别人使用前,必须先被部署到区块链上。

从智能合约的代码到使用智能合约,大概包含几个步骤:

  1. 编写智能合约的代码(通常是用 Solidity 写)
  2. 编译智能合约的代码变成可在 EVM 上执行的 bytecode(binary code)。同时能够经过编译取得智能合约的 ABI
  3. 部署智能合约,其实是把 bytecode 存储在链上(经过一个transaction),并取得一个专属于这个合约的地址。
  4. 若是要写个程序调用这个智能合约,就要把信息发送到这个合约的地址(同样的也是经过一个 transaction)。Ethereum 节点会根据输入的信息,选择要执行合约中的哪个 function 和要输入的参数

而要如何知道這这个智能合约提供哪些 function 以及应该要传入什么样的参数呢?这些信息就是记录在智能合约的 ABI。

小结:API是一个明码编程的接口,而ABI是ABI是定义以太坊合约调用的一种格式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值