Erc-20
與部署在 Ropsten 測試網上的合約連接出現問題
我在呼叫 Ropsten 測試網上部署的合約功能時遇到問題。以前,我在 testrpc 上對此進行了測試,一切正常。我正在處理 ERC20 標準代幣的轉讓。
當我嘗試使用**contract.call().balanceOf()**呼叫 balanceOf 時,它引發了以下錯誤
web3.exceptions.BadFunctionCallOutput: Could not transact with/call contract function, is contract deployed correctly and chain synced?
然後我也嘗試了contract.transact().balanceOf(),它拋出了以下錯誤
raise ValueError(response["error"]) ValueError: {'code': -32000, 'message': 'unknown account'}
是不是因為 geth 沒有與 Ropsten 鏈完全同步?如果我現在必須與 Ropsten 鏈完全同步,這是否意味著當合約稍後部署到主網時,主網鏈也必須完全同步?
合約部署正確並且鏈同步了嗎?
該錯誤消息是正確的。您絕對應該完全同步,這也將適用於主網。您可能會驚喜地發現奇偶校驗同步的速度有多快。
未知帳戶
此問題與同步無關。聽起來您還試圖從 geth 沒有密鑰的帳戶進行交易。
web3.eth.accounts
需要顯示您設置為 from 欄位中的帳戶transact()
。