Fabric链码技术分享

Zealot
区块链
2019-06-19

具体PPT请到https://tech.lock-in.cn/resourceDetail/3996044684a84a03b26adc7fd6c62001 下载

接口

开发生命周期

事务冲突

链码数据建模

事务可视性

访问控制

动态注入

init()函数的调用问题,init()不要尽量不要初始化全局变量

因为init函数只在初始化链码和升级的时候才会调用。在链码编写的时候,不要使用全局变量,因为可能不被初始化

不使用GetFunctionAndParameters()和GetStringArgs(),差的数据结构和不便于升级? string编码?

推荐使用 GetArgs() ,使用json,protobuf等串行化数据结构

原始的接口,编程起来比较麻烦,可以使用工具来帮助我们使用接口:

Hyperledger Composer(https://hyperledger.github.io/composer/latest/)
Improved Fabric programming model in 1.4 - FAB-11246 (Nodejs)
Hyperledger Chaintool - Golang (https://github.com/hyperledger/fabric-chaintool)

点赞 1
2条评论
dahan
2019-09-27
fabric-samples 里的示例都是多个字符串参数,当数据结构包含很多字段时导致参数太多,该怎么办? 比如函数 insertUser 的参数有 name, age, gender, province, city, email, mobile 等等
dahan
2019-09-27
"使用json,protobuf等串行化数据结构" 是指把所有参数用 json 表示吗? 比如函数 queryUser 的参数:{ "province": "北京", "age": "18", "gender": "M" }
其他心得