如何解决Tron Web - 验证 TransferContract 错误,没有 OwnerAccountTron 链接
我正在使用 Tron Web 开发区块链 Web 应用程序。我已按照文档进行操作,但在使用 tronweb.trx.sign() 函数时出现以下错误,
未捕获(承诺)类 org.tron.core.exception.ContractValidateException :验证 TransferContract 错误,没有 OwnerAccount。
下面是我的代码,(我有 tron link chrome 扩展,节点:Mainnet)
var obj = setInterval(async () => {
if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
clearInterval(obj)
var tronweb = window.tronWeb
var tx = await tronweb.transactionBuilder.sendTrx('fromaddr',10,'toaddr');
var signedTx = await tronweb.trx.sign(tx);
var broastTx = await tronweb.trx.sendRawTransaction(signedTx);
console.log(broastTx)
}
},10)
请检查并让我知道我错过了什么
解决方法
这一行,第一个和第三个参数是字符串文字而不是对象。
var tx = await tronweb.transactionBuilder.sendTrx('fromaddr',10,'toaddr');
从 docs 开始,第一个和第三个参数是地址。
await tronWeb.transactionBuilder.sendTrx(
toAddress,amount,fromAddress
);
注意:Tron 地址有 Hex 和 Base 格式。要将一种格式转换为另一种格式,您可以使用 tronWeb.address.toHex(address)
或 tronWeb.address.fromHex(address)
您应该将 'fromaddr'
替换为 'toaddr'
var obj = setInterval(async () => {
if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
clearInterval(obj)
var tronweb = window.tronWeb
var tx = await tronweb.transactionBuilder.sendTrx('toaddr','fromaddr');
var signedTx = await tronweb.trx.sign(tx);
var broastTx = await tronweb.trx.sendRawTransaction(signedTx);
console.log(broastTx)
}
},10)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。