Web3js
對同一伺服器上的另一個使用者帳戶進行奇偶校驗 web3 訪問?
我正在遵循 Parity github 頁面的說明:https ://github.com/paritytech/parity/wiki/Basic-Usage
具體來說:
$ npm install web3 $ node > Web3 = require("web3") > web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545")); > web3.eth.blockNumber 743397
當我作為執行 Parity 的同一 Linux 使用者執行此操作時,所有這些都有效。但是當我嘗試創建一個新的使用者帳戶並從該帳戶訪問 RPC 時,我得到 Web3 和 web3 命令的不同結果,然後我看到:
bzz: Bzz { givenProvider: null, currentProvider: null } } > web3.eth.blockNumber undefined
這就像它沒有找到 RPC 埠連接。使用者帳戶是否重要?RPC 埠就是 RPC 埠吧?我錯過了什麼重要的東西嗎?
IPC-RPC API 尊重 unix 系統使用者權限。您可以通過
chmod
IPC 套接字等工具控制 IPC 訪問。HTTP-RPC API 與使用者帳戶無關,應該適用於本地或遠端連接到 HTTP 端點的任何使用者。但是,您可以通過 Parity 配置控制訪問:
--no-jsonrpc Disable the JSON-RPC API server. (default: false) --jsonrpc-port PORT Specify the port portion of the JSONRPC API server (default: 8545). --jsonrpc-interface IP Specify the hostname portion of the JSONRPC API server, IP should be an interface's IP address, or all (all interfaces) or local (default: local). --jsonrpc-cors URL Specify CORS header for JSON-RPC API responses. (default: None) --jsonrpc-apis APIS Specify the APIs available through the JSONRPC interface. APIS is a comma-delimited list of API name. Possible name are all, safe, web3, eth, net, personal, parity, parity_set, traces, rpc, parity_accounts. You can also disable a specific API by putting '-' in the front: all,-personal (default: web3,eth,pubsub,net,parity,parity_pubsub,traces,rpc,secretstore). --jsonrpc-hosts HOSTS List of allowed Host header values. This option will validate the Host header sent by the browser, it is additional security against some attack vectors. Special options: "all", "none", (default: none).