我试图通过web3访问合同中的存储地址数组,但收到错误:
Error: Invalid JSON RPC response: {"id":3,"jsonrpc":"2.0","error":{"code":-32603}}
at Object.InvalidResponse (inpage.js:14308)
at inpage.js:14308
at inpage.js:9935
at inpage.js:735
at next (inpage.js:5577)
at inpage.js:1220
at inpage.js:735
at replenish (inpage.js:1255)
at iterateeCallback (inpage.js:1245)
at inpage.js:1220
与合同的其他互动工作正常。 这是合同的片段:
contract MyContract{
address[2048] public field;
function getField() external view returns(address[2048]){
return field;
}
}
以下是js的片段:
var ContractDef = web3.eth.contract(abi)
MyContract= ContractDef.at("...")
MyContract.getField(function(err, res){
// err is set, res is undefined
})
我可以在ganache控制台中看到eth_call。 我尝试改变燃气价格并限制ganache中的参数,但没有运气。 我对Solidity / Smart合同很陌生,所以我可能会在这里遗漏一些东西。谢谢你的帮助:)
版本: