乐趣区

关于区块链:DDCNFT开发常见问题

id:BSN_2021
公众号:BSN 研习社

2022 年 1 月 25 日,区块链服务网络倒退联盟上线推出了“BSN-DDC 根底网络”并进入试商用阶段。同时,BSN-DDC 官网门户(ddc.bsnbase.com)上线公布,供 DDC/NFT 业务方进行“平台方”的注册申请。

截止以后,BSN-DDC 根底网络已上线运行一个月余,开发者在应用过程中,也提出了不少的问题。上面是 BSN 技术支持人员总结的常见问题(FAQ)。

问:应用武汉链 DDC-SDK 生成 DDC,交易状态为 0x0 是为什么?

答:查看设置的 gasLimit,可能是用于 gasLimit 设置过低,此时将 gasLimit 进步或不设置。

问:1155DDC 详情外面的 ddcPubTotal 字段是指什么,转移后该字段会变吗?

答:1155DDC 详情外面的 ddcPubTotal 字段是这个 1155DDC 发现的总数量,这个数量不会变。

问:应用官网 DDC 合约生成 DDC 都须要领取哪些费用?

答:应用官网 DDC 生成 DDC 时,sender 账户要领取本次交易所须要耗费的能量值(5 分钱左右)和 DDC 业务费(生成 1 元,转移、销毁 3 毛)

问:应用文昌链 DDC-SDK 进行 mint 的时候报“failed to check sender balance: sender balance”是什么起因?

答:

1、sender 的能量值有余或 sender 的能量值余额小于 gasLimit。

2、能量值和 gasLimit 都没问题时,查看下链账户的算法是否是 k1 的。

问:ddcURI 能够进行批改吗或 setDDCURI 什么状况下能够用?

答:如果拥有者在第一次生成 DDC 时 ddcURI 为空,生成之后拥有者就能够应用 setDDCURI 办法进行 ddcURI 的赋值,如果 ddcURI 曾经有值了就不能够再批改了。

问:应用文昌链 DDC-SDK 生成 DDC,交易状态为 0x0 是为什么?

答:

1、查看 sender 和 to 的账户状态,是否是启用状态

2、查看 sender 是否有足够的业务费

3、查看 gasLimit 设置的是否过小,将 gasLimit 进步

问:为什么用 openAPI 进行 DDC 业务费充值后,门户还显示是 0?

答:门户的业务费、能量值、DDC 的显示都不是实时的,是链上同步至链下,链下定时排队去更新的,倡议用户应用 openAPI 操作创立链账户开明官网 DDC,接入官网 DDC,业务费充值,账户状态变更后都间接调用 DDC-SDK 中的办法去链上确认后果。

问:mint 之后,如何判断交易胜利?

答:除中移链以外依据交易 hash 获取交易数据中的交易状态,依据交易状态判断交易是否胜利(文昌链、武汉链 status 为 0x1 时为胜利、泰安链 status 为 0x0 时为胜利)。中移链调用 getInfo 办法查看 head_block_num 是否大于 mint 之后返回的块高,大于则示意上链胜利。

问:DDC 门户创立链账户的名称是否可反复、可批改?

答:目前是链账户名称同一个账户下不能够反复,不能够批改。

问:mint 之后如何获取 DDCID?

答: 依据交易所在的块号,调用 blockEventService.getBlockEvent 办法查这个块中的事件,如 DDC721TransferEventBean 中有 DDCID。

问:DDC 受权和账户受权的区别?

答:DDC 受权是用户将名下的某个 DDC 受权给第三方,账户受权是用户将名下的所有 DDC 受权给第三方,DDC 受权在 DDC 被转移后受权生效,账户受权勾销受权后才会生效。

问:转移和平安转移(生成和平安生成)的区别?

答:转移和平安转移(生成和平安生成)的区别可参考这篇文章

https://www.jianshu.com/p/2fe…。

问:应用武汉链 DDC-SDK 报“already known”,是什么起因?

答:是因为频繁调用接口进行交易,nonce 值反复,解决方案就是每次交易工夫隔一段时间或是每次提交交易都设置 nonce 值,如 RequestOptions requestOptions = RequestOptions.builder()

    .setNonce(2)

    .build();

问:应用武汉链 DDC-SDK 报“nonce too low”,是什么起因?

答:

1、transactionSignature 中设置的的 privateKey 是否是 sender 的 privateKey

2、nonce 值反复,每次交易时在 options 中设置 nonce 的值,如 RequestOptions requestOptions = RequestOptions.builder()

    .setNonce(2)
    .build(); 
退出移动版