TRON js签名交易
2022-07-22 本文已影响0人
欧巴刚弄死他
trc20:
var contractAddress = "TRC-20 合约";
//选择合约方法
let functionSelector = "transfer(address,uint256)";
//根据方法构造参数
let parameter = [
{type: "address",value: address},
{ type: "uint256", value: Math.ceil(number) }
];
//额外参数
let options = {
shouldPollResponse: false,
feeLimit: 1000000 //1Trx
};
// 构造智能合约交易信息
let res = await tronWeb.transactionBuilder
.triggerSmartContract(contractAddress, functionSelector, options, parameter)
.catch(err1 => {
// 构建交易信息失败
return false;
});
// 向转账交易信息中追加 备注信息
await tronWeb.transactionBuilder.addUpdateData(res.transaction, "备注信息", 'utf8');
// 对已经添加备注的交易信息进行签名
let sign = await tronWeb.trx.sign(res.transaction).catch(err2 => {
//签名失败
return false;
});
// 将签名交易广播上链
return await tronWeb.trx.sendRawTransaction(sign).catch(outputErr => {
//交易广播出错
console.log(outputErr);
return false;
});