npm 包 ilp-plugin-payment-channel-framework 使用教程

阅读时长 5 分钟读完

前言

在实际开发中,我们经常需要对支付进行处理。对于支付流程的设计,虽然支付方式千差万别,但是在实现上都有共性的地方。支付通道(Payment Channel)是一种广泛用于移动支付和区块链支付等场景的方案。本文将介绍 npm 包 ilp-plugin-payment-channel-framework 如何使用来构建支付通道。

ilp-plugin-payment-channel-framework 简介

ilp-plugin-payment-channel-framework 是一个基于 Interledger 协议的支付通道框架。Interledger 是一个钱包无关的跨链协议,它允许任何两个支付和结算系统之间的交易。这个库只用于支持使用 Interledger 建立支付通道。

本库提供了一个使用缓存的支付通道实现。它允许双方安全地管理一个信任网络中的资金,使交易成本最小化。

ilp-plugin-payment-channel-framework 使用步骤

  1. 安装模块

使用 npm 安装模块:npm install ilp-plugin-payment-channel-framework

  1. 创建支付通道

上面代码创建了一个 Interledger 地址,并与远端插件建立通信。

  1. 插件监听事件

上面代码监听插件的 incoming_prepare 事件。插件在收到准备(prepare)订单时会触发该事件。

  1. 支付流程

Payee 方发起创建通道的请求并将通道创建信息通过 Interledger 网络发送给 Payer。在下面的示例中,Payer 执行:创建通道、发送通道信息给 Payee、发送第一笔付款给 Payee。收到第一笔付款的 Payee 也必须重新发送通道信息的有效性。

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

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

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

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

  ----- ---------------------------
    ----------
    -----------
    -------- ----------------
    ---------- ------
    --------- -------------------------
    --------- ------------------------
  --
  ----- --- - ----- --------------------------
    ------- ----------------
    --- -------------------------
    ---- ------------
  --
-
---------------------------------- ------------
  1. 关闭通道

当通道余额为零时,支付通道关闭。Payee 第一次请求关闭通道并发送 Closing 消息。当 Payer 发送 tranfers 消息到 Payee 时,Payee 不再响应 any_messages 且返回 noop 而不是 transfer 消息。当 Payer 发送 tranfers 消息时,其 never_received 机制启动,这使得无法收到更小的支付,等待时间大于、小于 Payer 通过 getExpiry 方法获取的距离通道关闭的时间。

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

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

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

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

结束语

我们介绍了 ilp-plugin-payment-channel-framework 的基本使用,涉及到了支付通道的创建、流程和通道的关闭。本技术文章希望对读者的前端开发提供指导意义,同时也为读者带来更深入的学习体验。感谢读者的阅读。

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

纠错
反馈