首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Fabric链码API文档

一、Fabric-shim.ChaincodeInterface

1、ChaincodeInterface

在链码当中我们必须实现ChaincodeInterface接口中定义的方法,例如init()、invoke() 只有实现这些方法才不会报错,两个方法都会传入一个stub对象,init() 方法作为链码初始化或者升级时使用,可以在此方法中实现生成一些实例化的结构体,而invoke() 则是负责链码交互,执行一些业务逻辑,执行一些方法实现对账本中内容的增删改查。

2、init

Init 负责链码的初始化,以及链码的升级。具体调用方法如下,因方法过长,不过多赘述,将一些需要初始化的内容序列化保存至账本。

3、Invoke

Invoke方法负责链码交互,判断当前该执行哪个方法,执行业务逻辑。

二、fabric-shim.ChaincodeStub

1、createCompositeKey

createCompositeKey方法的作用是创建一个string组合键,通过前缀和需要拼接的字段,创建组合键,返回一个string组合键,以及一个错误信息。

2、putState

putState通过一个键值和一个byte数组将其按照key value 存入账本当中,若账本中已经存在则会覆盖原有的值,返回值为错误信息,所以一般用来更新账本,即保存、修改账本中的内容。

3、getState

getState根据key从账本中取出数据(value)返回值为数据的byte数组和一个错误信息。通常用于查询。

4、delState

delState根据key值删除账本中对应key的键值对,返回一个错误信息。

5、getHistoryForKey

getHistoryForKey 根据key值在帐本中查找key对应的历史记录,每次历史更新都将会保存至账本当中,都记录有当时的值和关联的交易id、时间戳。时间戳取自交易提议头。此方法需要对peer节点的配置来使用。具体配置方法如下:

此方法返回一个Promise对象,其解析值为HistoryQueryIterator对象。

6、getStateByRange

getStateByRange此方法返回一个账本状态键的迭代器,遍历起始键至结束键之间的所有状态键,返回结果按照词典顺序排列。

一般来说操作账本的常用的就以上几种,还有很多其他方法,具体方法在fabric官方文档中有详细的解释。

三、fabric-shim.Shim

1、Shim

shim提供了链码底层的开发接口,用于链码逻辑的判断来返回内容。

2、Error

error返回500状态码以及错误信息。

3、Success

success返回200状态码以及字节数组。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210302A0CX1W00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券