首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将bytes32传递给Web3.methods.function.call

如何将bytes32传递给Web3.methods.function.call
EN

Ethereum用户
提问于 2019-04-19 12:06:13
回答 1查看 1.6K关注 0票数 1

我有一份合同是做一次恢复:

代码语言:javascript
复制
function recover(bytes32 h, uint8 v, bytes32 r, bytes32 s) public returns (address) {                
      return ecrecover(h, v, r, s);
}

它在我的松露单元测试中很好。

代码语言:javascript
复制
console.log(await ecdsa.recover.call('0xbec921276c8067fe0c82def3e5ecfd8447f1961bc85768c2a56e6bd26d3c0c53', '0x1b', '0x6c5b9b4deb51a4733784657abac3e1dcef04086979a500397456b948981ccbc1', '0x2944200fb10074295baa04db6c048dc120ee9f3b48a42cbe4223242f07cc8e85')); 

但是当我使用web3@1.0.0和NodeJs中的合约ABI时,我会收到一个错误:

代码语言:javascript
复制
const contract = new this.web3.eth.Contract(this.abi.abi, this.abi.networks['5777'].address);    
await contract.methods.recover.call('0xbec921276c8067fe0c82def3e5ecfd8447f1961bc85768c2a56e6bd26d3c0c53', '0x1b', '0x6c5b9b4deb51a4733784657abac3e1dcef04086979a500397456b948981ccbc1', '0x2944200fb10074295baa04db6c048dc120ee9f3b48a42cbe4223242f07cc8e85', (err, result) => { console.log(err); console.log(result);});


{ Error: types/values length mismatch (count={"types":4,"values":0}, value={"types":[{"name":"h","type":"bytes32"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"values":[]}, version=4.0.27)
EN

回答 1

Ethereum用户

发布于 2019-04-23 20:52:41

使用web3 v1,您应该使用方法而不是调用(https://web3js.readthedocs.io/en/1.0/web3-eth-contract.html#methods-mymethod-call)传递参数。

像这样的东西应该能起作用

代码语言:javascript
复制
await contract.methods.recover(
    '0xbec921276c8067fe0c82def3e5ecfd8447f1961bc85768c2a56e6bd26d3c0c53', 
    '0x1b', 
    '0x6c5b9b4deb51a4733784657abac3e1dcef04086979a500397456b948981ccbc1', 
    '0x2944200fb10074295baa04db6c048dc120ee9f3b48a42cbe4223242f07cc8e85'
).call((err, result) => { 
    console.log(err); 
    console.log(result);
});
票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/69870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档