aozhiwei 9063ed8586 1
2024-09-04 17:03:49 +08:00

30 lines
836 B
JavaScript

const app = require('j7/app');
const utils = require('j7/utils');
const Web3 = require('web3');
const metaFactory = require('../metadata/factory');
async function getBalance(session) {
const tokenContractAddress = session.request('token_address'); // ERC20代币合约地址
const accountAddress = session.request('account_address'); // 用户地址
const rpcUrl = session.request('rpc_url');
const web3 = new Web3(rpcUrl);
const tokenContract = new web3.eth.Contract(metaFactory.getErc20Abil(), tokenContractAddress);
tokenContract.methods.balanceOf(accountAddress).call((err, balance) => {
if (err) {
session.rspErr(1, err);
return;
}
session.rspData({
'balance': balance
});
});
}
function init() {
app.registerHandler('Erc20', 'getBalance', getBalance);
}
exports.init = init;