ERC20代币的标准API



https://eips.ethereum.org/EIPS/eip-20

## Methods
1.name
function name() constant returns (string name)
返回string类型的ERC20代币的名字,例如:StatusNetwork

2.symbol(符号)
function symbol() constant returns (string symbol)
返回string类型的ERC20代币的符号,也就是代币的简称,例如:SNT。

3.decimals(小数)
function decimals() constant returns (uint8 decimals)
支持几位小数点后几位。如果设置为3。也就是支持0.001表示。

4.totalSupply
function totalSupply() constant returns (uint256 totalSupply)
发行代币的总量,可以通过这个函数来获取。所有智能合约发行的代币总量是一定的,
totalSupply必须设置初始值。如果不设置初始值,这个代币发行就说明有问题。

5.balanceOf
function balanceOf(address _owner) constant returns (uint256 balance)
输入地址,可以获取该地址代币的余额,注意不是以太币的余额。

6.transfer
function transfer(address _to, uint256 _value) returns (bool success)
转账功能,调用者调用transfer函数将自己_value数量的token转账给 _to

7.approve(批准)
function approve(address _spender, uint256 _value) returns (bool success)
批准_spender账户从自己的账户转移_value个token。可以分多次转移。

8.transferFrom
function transferFrom(address _from, address _to, uint256 _value) returns (bool success)
与approve搭配使用,approve批准之后,_spender调用transferFrom函数来转移_value个token到 _to的账户中。

9.allowance(限额)
function allowance(address _owner, address _spender) constant returns (uint256 remaining)
查看_owner授权给_spender的剩余token数量。
(owner:主人;所有者 spender:花钱者)
approve、transferFrom及allowance解释:
账户A有1000个ETH,想允许B账户随意调用100个ETH。
A账户按照以下形式调用approve函数approve(B,100)。
当B账户想用这100个ETH中的10个ETH给C账户时,则调用transferFrom(A, C, 10)。
这时调用allowance(A, B)可以查看B账户还能够调用A账户多少个token。


## Events
1.Transfer
event Transfer(address indexed _from, address indexed _to, uint256 _value)
当成功转移token时,一定要触发Transfer事件

2.Approval
event Approval(address indexed _owner, address indexed _spender, uint256 _value)
当调用approval函数成功时,一定要触发Approval事件

原创文章 104 获赞 61 访问量 11万+

猜你喜欢

转载自blog.csdn.net/jc0803kevin/article/details/105588457