2 NFToken应用示例
本章节将通过发行基于ERC-721标准的NFTs加密猫的示例来说明NFToken的简单应用。NFToken中的资产对应示例中的猫窝,NFToken对应示例中的宠物猫。
操作步骤如下:
2.1 创建一个猫窝
创建一个猫窝,用于管理所有的宠物猫。猫窝对应NFToken中的资产,可以通过“submit”接口的“AssetCreate”交易类型创建资产。
{
"method":"submit",
"params":[{
"secret":"snoPB6Xt********Afg1SUTb",
"tx_json":{
"Account": "hHb9CJAWyB46j91VRWn9rDkukG4bwdtyTh",
"TransactionType": "AssetCreate",
"id": "1",
"Name": "Cattery",
"Flags":19
}
}
]
}
这里我们创建了一个名为“Cattery”的猫窝。它有唯一的AssetID:69324FA283893D729C6F8FA43673F8BD9A411B6BEE126BF9624CE009BE2B8990
Flag = 19(十进制) = 00010011(二进制) 表示:该asset允许转移、销毁、撤销三个功能,,即对应着猫窝里的宠物猫都是可以赠送,死亡及收回的。
2.2 获取猫窝的详细情况
通过“get_asset_info”接口查询资产,获取猫窝的详细情况。
{
"method":"get_asset_info",
"params":[{
"AssetID":"69324FA283893D729C6F8FA43673F8BD9A411B6BEE126BF9624CE009BE2B8990"
}
]
}
这里我们可以看到上面创建的猫窝的详细信息。
2.3 生下第一只宠物猫
通过“submit”接口的“TokenCreate”交易类型创建NFToken,生出第一只宠物猫。
{
"method":"submit",
"params":[{
"secret":"snoPB6Xt********Afg1SUTb",
"tx_json":{
"Account":"hHb9CJAWyB46j91VRWn9rDkukG4bwdtyTh",
"TransactionType":"TokenCreate",
"AssetID":"69324FA283893D729C6F8FA43673F8BD9A411B6BEE126BF9624CE009BE2B8990",
"id":"101",
"Owner":"hHb9CJAWyB46j91VRWn9rDkukG4bwdtyTh"
}
}
]
}
这里我们创建了基因编号为101的宠物猫。它有唯一的TokenID : 284A2B08853C44CB981252DA041F7CAC8C5599045D286DB56ED4AD69A6DD7515
2.4 获取宠物猫的详细信息
通过“get_token_info”接口查询NFToken,获取宠物猫的详细信息。
{
"method":"get_token_info",
"params":[{
"TokenID":"284A2B08853C44CB981252DA041F7CAC8C5599045D286DB56ED4AD69A6DD7515"
}
]
}
这里我们可以看到上面创建的宠物猫的详细信息。
2.5 给朋友赠送宠物猫
通过“submit”接口的“TokenTransfer”交易类型转移NFToken,将宠物猫赠送给朋友(区块链账号:ha6BF73GsZBo2tPrHhKvkQGht6bYE2g2Np)。
{
"method":"submit",
"params":[{
"secret":"snoPB6Xt********Afg1SUTb",
"tx_json":{
"Account":"hHb9CJAWyB46j91VRWn9rDkukG4bwdtyTh",
"TransactionType":"TokenTransfer",
"TokenID":"284A2B08853C44CB981252DA041F7CAC8C5599045D286DB56ED4AD69A6DD7515",
"Destination":"ha6BF73GsZBo2tPrHhKvkQGht6bYE2g2Np"
}
}
]
}
此处account:hHb9CJAWyB46j91VRWn9rDkukG4bwdtyTh 把自己拥有的TokenID为284A2B08853C44CB981252DA041F7CAC8C5599045D286DB56ED4AD69A6DD7515宠物猫赠送给了account:ha6BF73GsZBo2tPrHhKvkQGht6bYE2g2Np 。
2.6 朋友查看自己拥有的宠物猫
通过“get_account_all_token_info”接口可以查询账号下拥有的NFToken,朋友可以查到自己当前拥有几只宠物猫。
{
"method":"get_account_all_token_info",
"params":[{
"Owner": "ha6BF73GsZBo2tPrHhKvkQGht6bYE2g2Np",
"marker":"0|1",
"limit":1
}]
}