Web3js
如何增加 web3.py 中的 EVM 時間?
在使用 web3.js、Truffle 和 Ganache 時,我可以這樣做:
web3.currentProvider.send({method: "evm_increaseTime", params: [numOfSeconds]});
我怎樣才能在 web3.py 中做同樣的事情?
當我做:
from web3 import HTTPProvider for func in dir(HTTPProvider): if not func.startswith('_'): print(func)
我得到:
decode_rpc_response encode_rpc_request endpoint_uri get_request_headers get_request_kwargs isConnected logger make_request middlewares request_func
它可能是我需要呼叫的這些函式之一嗎?
謝謝!
更新:
我發現我可以像這樣對請求進行編碼:
provider = Web3(HTTPProvider("http://127.0.0.1:8545")).providers[0] request = encode_rpc_request("evm_increaseTime", [123])
列印時
request
,我得到:b'{"jsonrpc": "2.0", "method": "evm_increaseTime", "params": [123], "id": 0}'
但是我該如何發送這個請求呢?
好的,這似乎是工作:
web3 = Web3(HTTPProvider("http://127.0.0.1:8545")) provider = web3.providers[0] provider.make_request("evm_increaseTime", [numOfSeconds])