Web3js

如何從 web3.js 連接到遠端 Parity 節點?

  • April 13, 2022

我已經按照這些說明在 AWS EC2 實例上安裝了奇偶校驗,並開始使用該--jsonrpc-apis 'web3,eth,net,parity'標誌進行奇偶校驗。我還嘗試了許多其他標誌,例如--rpccorsdomain '*'

但是我正在努力使用 web3.js 連接到它。

此外,我暫時打開了來自我的 IP 的所有入站流量

查看 JSONRPC 文件:

--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 web3, eth, net, personal,
                            parity, parity_set, traces, rpc, parity_accounts.
                            (default: web3,eth,net,parity,traces,rpc).
--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).

因此,像您一樣啟用所需的 API 只是您要解決的難題之一 :)

假設您對預設埠和預設 API 沒問題,讓我們看看您可能想要的以下功能:

  • --jsonrpc-interface all在所有網路介面上啟用 HTTP JSON-RPC API,而不僅僅是本地環回。您還可以指定--jsonrpc-interface 133.33.33.37僅將 RPC 服務到公共網路介面的公共 IP。

試一試,它應該已經可以工作了,假設您已經針對 AWS 防火牆打開了 RPC 埠。額外的微調可以通過

  • --jsonrpc-hosts all允許瀏覽器發送的所有主機頭值。
  • --jsonrpc-cors '*'允許來自任何域的所有 CORS 請求。

請注意,您可能希望禁用諸如、、、之類的合理 APIpersonal,parity_accounts,parity_set並禁用其他功能,或強化您的客戶端。--no-ui``--no-dapps``--no-secretstore``--no-code``--no-storage

+1 @Vlal。隨著--jsonrpc-hosts all --jsonrpc-interface all我不得不添加--jsonrpc-cors null而不是--rpccorsdomain "*"

引用自:https://ethereum.stackexchange.com/questions/17119