npm 包 @portis/web3-provider-engine 使用教程

阅读时长 4 分钟读完

npm 包 @portis/web3-provider-engine 使用教程

背景

在以太坊生态系统中,Web3.js 是一个很常见的库, 它不仅提供了以太坊核心功能的 API,还在各种 Web3 应用程序中广泛使用。Web3.js 的主要任务之一是与以太坊节点进行通信。通常情况下,我们需要在其持有的 Ethereum Address 下使用 Web3.js 进行各种操作,包括交易、合约调用、查询等。然而,在一些特殊的情况下,用户可能需要以某种方式授权以太坊操作,这时就需要 Portis 提供的 @portis/web3-provider-engine 这个 npm 包。

安装

使用 npm 安装 @portis/web3-provider-engine:

配置和使用

在应用程序中,我们需要通过初始化该包来配置 Portis 平台和 Web3.js 提供程序:

在此例中,使用了 createPortisProvider 函数来生成一个 Portis 提供程序,其中需要两个参数:网络和 apiKey。您可以通过 Portis 平台 注册一个账号并申请 apiKey。goerli 是 Portis 目前启用的一个以太坊测试网络,可以使用其他网络。

在 Web3.js 中,我们需要设置一个新的 provider,使用 above 配置获得的 provider:

这就是配置和使用 @portis/web3-provider-engine npm 包的全部代码。您现在可以像通常一样使用 Web3.js API 进行交易、合约调用和查询等操作。

示例代码

下面是完整的示例代码,它通过 Portis 提供程序与以太坊网络进行交互:

-- -------------------- ---- -------
----- - -------------------- - - ----------------------------------------
----- ---- - ----------------

----- -------- - ----------------------
  -------- ---------
  ------- ----------------------
  ------------------- ---------------------------------------------
---

----- ---- - --- ---------------

----- -------- ----------------- -
  ----- -------- - ----- -----------------------
  ----- ------ - ----- --------------------------
    ----- ------------
    --- ---------------------------------------------
    ------ ----------------------
    ---- ------
    --------- -------------
  ---
  --------------- ------- ------------------------
-

------------------

总结

通过 @portis/web3-provider-engine,我们可以一步简单地将以太坊操作授权给 Portis,从而安全地访问以太坊网络。通过上面的示例代码,我们也可以了解到如何在应用程序中与以太坊网络进行简单的交互。但请注意,在应用程序开发中,Portis 和 Web3.js 有很多其他的高级功能,我们需要更多的实践和学习,最终可以提高我们的开发技能和水平。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f4f360e8250f93ef89002ff

纠错
反馈