Go-Ethereum
如何使 web3 工作?
對不起菜鳥問題。我安裝了 web3 (npm install web3),
但由於某種原因,nodejs 沒有呼叫 web3 方法或顯示對像數據,而是顯示對象結構:
> web3.eth.accounts Accounts { currentProvider: [Getter/Setter], _requestManager: RequestManager { provider: HttpProvider {
當我通過 geth attach 連接到 geth 時,嵌入到 geth 的 web3 可以正常工作
我正在嘗試從 docker 內部使用 web3,Dockerfile 如下:
FROM node:carbon # Create app directory WORKDIR /usr/src/app # Install app dependencies # A wildcard is used to ensure both package.json AND package-lock.json are copied # where available (npm@5+) COPY package*.json ./ RUN apt-get -y update && \ apt-get -y install vim RUN npm install RUN npm install express RUN npm install nodemon -g RUN npm install hashmap && \ npm install body-parser -g # If you are building your code for production # RUN npm install --only=production # Bundle app source COPY . . CMD [ "nodemon", "start" ]
下面的程式碼對我有用:
> web3.eth.getAccounts().then(console.log)
根據文件:https ://web3js.readthedocs.io/en/1.0/web3-eth.html#getaccounts
嘗試
await
在您的程式碼上添加關鍵字。像:await web3.eth.accounts
您正在添加這個,因為:web3 返回一個 Promise。您可以在 javascript 中搜尋什麼是承諾。