0

我正在尝试使用本指南向 复合协议提供资产:向复合协议提供资产

  1. 我在https://infura.io/创建了帐户并获得了我的 ProjectID。
  2. 我克隆了https://github.com/compound-developers/compound-supply-examples
  3. 执行
ganache-cli \
-f https://mainnet.infura.io/v3/<YOUR INFURA API KEY HERE> \
-m "clutch captain shoe salt awake harvest setup primary inmate ugly among become" \
-i 1 \
-u 0x9759A6Ac90977b93B58547b4A71c78317f391A28

我的 ProjectID 在https://mainnet.infura.io/v3/ url

  1. 之后,我node web3-js-examples/supply-eth-via-web3.js在上一步supply-eth-via-web3.js使用生成的 privateKey 运行。

我得到了一个错误:

My wallet's ETH balance: 100
Supplying ETH to the Compound Protocol...
cETH "Mint" operation successful.
Error: Returned values aren't valid, did it run Out of Gas? You might also see this error if you are not using the correct ABI for the contract you are retrieving data from, requesting data from a block number that does not exist, o
r querying a node which is not fully synced.
    at ABICoder.decodeParameters (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-eth-abi\lib\index.js:288:15)
    at Contract._decodeMethodReturn (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-eth-contract\lib\index.js:470:22)
    at Method.outputFormatter (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-eth-contract\lib\index.js:760:42)
    at Method.formatOutput (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-core-method\lib\index.js:147:54)
    at sendTxCallback (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-core-method\lib\index.js:523:33)
    at C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-core-requestmanager\lib\index.js:293:9
    at XMLHttpRequest.request.onreadystatechange (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\web3-providers-http\lib\index.js:98:13)
    at XMLHttpRequestEventTarget.dispatchEvent (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\xhr2-cookies\dist\xml-http-request-event-target.js:34:22)
    at XMLHttpRequest._setReadyState (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\xhr2-cookies\dist\xml-http-request.js:208:14)
    at XMLHttpRequest._onHttpResponseEnd (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\xhr2-cookies\dist\xml-http-request.js:318:14)
    at IncomingMessage.<anonymous> (C:\Users\adel1\PhpstormProjects\compound-supply-examples\node_modules\xhr2-cookies\dist\xml-http-request.js:289:61)
    at IncomingMessage.emit (events.js:327:22)
    at endReadableNT (_stream_readable.js:1327:12)
    at processTicksAndRejections (internal/process/task_queues.js:80:21)

似乎是cEthContract.methods.mint().send()正确执行的方法并且 ETH 钱包的余额正在发生变化。但在那之后所有其他方法都返回相同的错误(见上文)。

4

1 回答 1

0

您必须在交易选项中将气体限制设置得更高,否则这可能是 ganache-cli 的错误。存储库现在在最新提交中使用安全帽,这可能会更好。

于 2022-01-25T02:10:49.440 回答