首页 > 解决方案 > 是否可以在我们的结构链代码/智能合约中使用外部节点模块?

问题描述

我正在尝试编写一个chainCode,为了实现逻辑,我需要使用一个外部节点包,它不是fabric API的一部分。有可能这样做吗?

我从未见过需要外部节点模块的chainCode 示例。如果你知道一个例子,请与我分享。

另外,如果可能的话,我想知道这样做的风险以及将风险降到最低的好的设计是什么。

标签: node.jsnpmhyperledger-fabricsmartcontractshyperledger-chaincode

解决方案


'使用严格'

const { Shim } = require('fabric-shim')

常量路径=要求(“路径”)

常量 fs=require('fs')

const examplecc = require('./lib/examplecontract.js')

函数主(){

const tlsCertsPath=path.resolve(__dirname,"lib", "tls")

const tlsKey = fs.readFileSync( path.resolve(tlsCertsPath, "server.key"))
const tlsCert = fs.readFileSync(path.resolve(tlsCertsPath, "server.crt"))
const rootCert = fs.readFileSync(path.resolve(tlsCertsPath, "ca.crt"))
const config={
ccid:       
         

“examplecc:1177322ea1cb10e56c4499016dsdb2fbf0be155660e97a38ca48de76326b12362”,

address:   "0.0.0.0:9992"}


 const server= Shim.server(new examplecc(),{
  

 ccid:    config.ccid,

    address: config.address,

    tlsProps: {
        disabled:      true,
        key:           tlsKey,
        cert:          tlsCert,
        clientCACerts: rootCert,
    }
} )


server.start().then((res)=>{
    console.log("Server running successfully @" + config.address )
})

}

主要的()


推荐阅读