Go-Ethereum

Javascript VM 與註入的 w3 與 web3 提供程序之間的區別

  • June 21, 2020

它與 remix ethereum 瀏覽器有關。我想知道它們之間有什麼區別。我認為 Javascript VM 只是測試網路環境,您不需要任何乙太坊來測試。另外兩個呢?

在此處輸入圖像描述

  • Javascript VM:它將在瀏覽器中執行一個隔離的乙太坊節點。當您想測試合約時,它非常有用。
  • Injected Web3:它會嘗試使用嵌入在瀏覽器中的“Web3 provider”。例如,MetaMask 擴展將嵌入一個“Web3 提供程序”,您可以配置將該提供程序連接到測試網或主網。這允許與真實網路進行互動。
  • Web3 Provider:它會要求你提供乙太坊客戶端的 RPC 地址。這提供了最大的控制,您連接到自己的節點。例如 geth 或 parity 實例。

由於 MetaMask 允許使用您自己的“Web3 Provider”,因此最後兩個具有相似的功能。一個重要的區別是 MetaMask 將處理帳戶管理,而對於“Web3 Provider”,您必須從客戶端管理它們。

是的,您可以將 Metamask 用作注入的 web3 提供程序(注入的瀏覽器),Metamask 將連接到您配置的任何節點。使用其他選項(web3 提供程序),您可以直接與您的節點連接,無論是 Ganache 或 Geth 還是本地或遠端的任何 web3 提供程序。

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