如何從本地機器訪問部署在 Ropston 網路上的智能合約的 API?
我想從部署在 Ropsten 網路上的智能合約訪問 API。這個智能合約是由一些外部實體編寫和部署的,它們已經暴露了 API。我知道智能合約地址、solidity 文件(因為原始碼是開放的)、要呼叫的 API。我想知道通過哪種方式可以從本地機器連接 Ropsten 網路並呼叫所需的 API。
他們的文件不清楚,所以即使嘗試了多種選擇,我也無法做到。
請讓我知道是否有任何方法可以做到這一點。讓我知道是否需要任何進一步的資訊
我理解“API”是指合約功能。有幾種方法:
選項 1:MyEtherwallet(或 myCrypto):
查找合約 ABI:
solc --abi contractSourceCode.sol
轉到:https ://www.myetherwallet.com/#contracts
輸入合約地址、合約 ABI 並點擊“訪問”。您將能夠與合約進行互動
選項 2:使用
geth
和 Infura在 infura.io 註冊並獲得令牌
使用 Infura 連接到 ropsten
geth attach https://ropsten.infura.io/<your-token>
現在您在 geth 控制台中:
var cont = eth.contract(<contract ABI>).at(<contract address>)
然後,您可以通過以下方式執行合約功能:
cont.functionName()
其中“functionName”是合約具有的任何功能(請注意,寫入
cont.
和按下tab
將自動完成。還有其他方法,但對我來說,這兩種方法是最簡單的。
如果合約在 etherscan 中得到驗證(正如你提到的它是開放的),那麼你只需轉到“寫合約”部分。並呼叫任何函式。