Remix
如果您使用 infura ropsten metamask 和 remix,如何為合約編寫後端
我正在使用帶有 ropsten 的元遮罩。使用 remix 在 ropsten 上部署了我的契約。對於後端,我使用 infura 創建 web3 的實例。ew Web3(new Web3.providers.HttpProvider(’ https://ropsten.infura.io/v3/MY_API_KEY ‘));
我可以通過 contract.getDetails(123) 從區塊鏈獲取數據;但是在發送詳細資訊時,我遇到了錯誤,“方法 eth_sendTransaction 不存在/不可用”
我了解您的問題,這是由於 Infura 和 Web3 之間的 API 版本更改所致。請嘗試將 Web3 API 的版本與 Infura 匹配。
安裝並使用 truffle-hdwallet-provider 使用您的助記詞和 infura 端點創建提供程序。然後,您可以在創建 Web3 實例時傳遞此提供程序:
const HDWalletProvider = require("truffle-hdwallet-provider"); const provider = new HDWalletProvider( mnemonic, 'https://ropsten.infura.io/v3/MY_API_KEY' ); const web3 = new Web3(provider);