4.7.7 Hyperledger Fabric - 应用程序开

2019-12-19  本文已影响0人  furnace

应用程序开发 - 应用程序设计元素 - 连接选项

连接选项与连接配置文件一起使用,以精确控制网关与网络的交互方式。使用网关可以使应用程序专注于业务逻辑,而不是网络拓扑。

在本主题中,我们将介绍:

1. 场景

连接选项指定网关行为的特定方面。网关之所以重要,其原因有很多,首要原因是允许应用程序专注于业务逻辑和智能合约,同时管理与网络中许多组件的交互。

image

连接选项控制行为的不同交互点。这些选项在本文中进行了详细说明。

连接选项的一个示例可能是指定 issue 应用程序使用的网关应使用身份 Isabella 来向 papernet 网络提交交易。另一个可能是网关应等待 MagnetoCorp 的所有三个对端节点来确认已提交交易以返回控制。连接选项允许应用程序指定网关与网络交互的精确行为。没有网关,应用程序需要做更多的工作。网关可以节省你的时间,使你的应用程序更具可读性,并且不易出错。

2. 使用

稍后我们将介绍应用程序可用的 全套连接选项;我们首先来看一下示例 MagnetoCorp issue 应用程序如何指定它们:

const userName = 'User1@org1.example.com';
const wallet = new FileSystemWallet('../identity/user/isabella/wallet');

const connectionOptions = {
  identity: userName,
  wallet: wallet,
  eventHandlerOptions: {
    commitTimeout: 100,
    strategy: EventStrategies.MSPID_SCOPE_ANYFORTX
    }
  };

await gateway.connect(connectionProfile, connectionOptions);

了解 identitywallet 选项如何是 connectionOptions 对象的简单属性。它们分别具有值 userNamewallet,这是在代码的前面设置的。将这些选项与 eventHandlerOptions 选项进行比较,后者本身就是一个对象。它具有两个属性:commitTimeout : 100 (以秒为单位) 和 strategy: EventStrategies.MSPID_SCOPE_ANYFORTX

了解如何将 connectionOptions 作为 connectionProfile 的补充传递到网关。网络由连接配置文件标识,选项精确指定网关应如何与之交互。现在让我们看看可用的选项。

3. 选项

以下是可用选项及其作用的列表。

4. 注意事项

下面的注意事项列表在决定如何选择连接选项时会很有帮助。

Reference

项目源代码

项目源代码会逐步上传到 Github,地址为 https://github.com/windstamp

Contributor

  1. Windstamp, https://github.com/windstamp
上一篇 下一篇

猜你喜欢

热点阅读