如何解决事件处理程序中的Node.js异步调用
以下代码:
async function eventQuery(){
var contract_abi = await getContractAbi(CONTRACT_ADDRESS_ADDRESS_PROVIDER);
const addressprovider = new web3Http.eth.Contract(contract_abi,CONTRACT_ADDRESS_ADDRESS_PROVIDER);
const contract_address_1 = await addressprovider.methods.getAddress1().call();
contract_abi = await getContractAbi(contract_address_1 );
const contract = new web3Ws.eth.Contract(contract_abi,contract_address_1 );
contract .events.allEvents()
.on('data',async function(event) {
if(event.raw.topics[0] === DEPOSIT) {
var result = await axios.get('https://myurl.com/api/query');
console.log(result.data);
}
})
.on('error',(error) => {
console.log(error);
});
}
eventQuery();
有时我会出错
TypeError: Cannot read property 'data' of null
,这意味着不等待http get调用。 有谁知道如何解决这个问题?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。