如何解决如何完成 JustSwap 智能合约的交换方法
我正在尝试完成 JustSwap 合约 S-USDT-TRX 代币 (TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE)
但是我在控制台中收到了响应:
REVERT 操作码已执行
我的代码:
const TronWeb = require("tronweb");
const ethers = require("ethers")
const MAINNET_RPC = "https://api.trongrid.io";
const PLACEHOLDER_PRIVATE_KEY = "YOUR_PRIVATE_KEY";
const HttpProvider = TronWeb.providers.HttpProvider;
const fullNode = new HttpProvider(MAINNET_RPC);
const solidityNode = new HttpProvider(MAINNET_RPC);
const eventServer = new HttpProvider(MAINNET_RPC);
const tronWeb = new TronWeb(fullNode,solidityNode,eventServer,PLACEHOLDER_PRIVATE_KEY);
const startJustSwap = async () => {
try {
const contractTokenExchangeUSDT = 'TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE'; //S-USDT-TRX Token
const parameters = [{type: `uint256`,value: 10000000},{type: `uint256`,value: 1614346581000}];
const tx = await tronWeb.transactionBuilder.triggerConstantContract(contractTokenExchangeUSDT,`trxToTokenSwapInput(uint256,uint256)`,{},parameters)
console.log(tx);
} catch (e) {
console.log(e);
}
};
startJustSwap();
当我检测到价格时,我得到了很好的结果。例如:
const tx = await tronWebLocal.transactionBuilder.triggerConstantContract(contractToken,`getTokenToTrxOutputPrice(uint256)`,[{
type: `uint256`,value: 10000000,}])
但我不能交换。我正在使用这样的连接并收到错误“REVERT 操作码执行”:
const tx = await tronWebLocal.transactionBuilder.triggerConstantContract(contractToken,[{ type: `uint256`,value: },{ type: `uint256`,value: 10}]);
你能帮我写出正确的代码吗?
非常感谢!
解决方法
triggerConstantContract 是触发智能合约的常量,交易出链。你只能通过这个来阅读合同。(在你的情况下说价格)。
试试这个:https://developers.tron.network/reference#triggersmartcontract
格式:tronWeb.transactionBuilder.triggerSmartContract(contractAddress,functions,options,parameter,issuerAddress);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。