Hyperledger Fabric SDK Nodejs
6156 ワード
SDKは何ができますかチャネル を作成します.は、peerノードをチャネル に参加させる.は、peerノードにスマート契約 をインストールする.チャネルでの例示的な化学結合は約 である.契約実行取引を呼び出します. 取引クエリ、ブロッククエリ fabricの安全性はデジタル証明書で保証されています.すべてのfabricにおける操作要求はCA証明書でなければならない.
Node.js SDKの機能
Hypeledger Fabric SDKは対象に向けたプログラミングスタイルで設計されています.モジュール化された構造は、暗号化モジュール、ステータス記憶モジュール、ログモジュールなどのキー機能に対して、抜き差し可能な代替実装を可能にする.SDKの機能リストには、 fabric-client: 新しいチャネルを作成します. は、チャンネルでノード に加入する.インテリジェント契約 をインストールします.インテリジェント契約を初期化する 取引を提出します. 契約を調べます. 各種クエリ機能: ブロック高 ブロックIブロックDとブロックハッシュクエリ を介しては、1つのpeerノードに属するすべてのチャネル を照会する.は、1つのpeerノードにインストールされているすべてのスマート契約 を照会する.は、チャネル内のすべてのスマート契約を調べます. は、IDによって取引 を照会する.クエリチャネルの構成 イベント: は、1つのpeerノードを接続するイベントフロー を有する.ブロックイベントを傍受する 取引事件を傍受し(取引が正常に帳簿に提出されたかどうかを確認し、無効と表記した) 契約上のカスタムイベントを傍受する Userオブジェクトプログレッシブ署名 多様な構成導入方式:ファイル、環境変数、プログラムパラメータ、メモリ設定 はログモジュール(wiston)を内蔵しており、logs 4 jsやbunyanなどの他のログモジュールを使って を交換することができます.挿抜可能なCryptSuiteインターフェースは、Fabricとの対話に成功するために必要な暗号化動作を記述しています. Software-based ECDSA PKCSヒドラ11-copliant ECDSA 挿抜可能な状態記憶インターフェースは、ユーザの状態キャッシュなどを保存するためのものである. ファイル記憶 CouchDB カスタム暗号化 TLS(grpcs:/)または非TLS(grpc:/)をサポートしながら、peerとorderに接続します.Remoteを参照してください.これは同じクラスと注文者の超クラス です. fabric-ca-client: 登録ユーザ CA証明書 を取得する.破棄証明書 証明書恒久化メモリ
Node.js SDKの機能
Hypeledger Fabric SDKは対象に向けたプログラミングスタイルで設計されています.モジュール化された構造は、暗号化モジュール、ステータス記憶モジュール、ログモジュールなどのキー機能に対して、抜き差し可能な代替実装を可能にする.SDKの機能リストには、
// json json
loadFromConfig(config)
addTlsClientCertAndKey(opts)
// channel promise
// ChannelRequest
![image.png](https://upload-images.jianshu.io/upload_images/5659111-b8fb4a5a46e7842c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
createChannel(request)
// User UserOpts promise
![image.png](https://upload-images.jianshu.io/upload_images/5659111-02aa7111abac01ca.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
createUser(opts)
extractChannelConfig(config_envelope)
getCertificateAuthority(name)
getChannel(name, throwError)
![image.png](https://upload-images.jianshu.io/upload_images/5659111-b81d7f0755cb7d5f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
getClientConfig()
getCryptoSuite()
getEventHub(peer_name)
getEventHubsForOrg(org_name)
getMspid()
getOrderer(name)
getPeer(name)
getPeersForOrg(org_name)
getStateStore()
getUserContext(name, checkPersistence)
initCredentialStores()
installChaincode(request, timeout)
![image.png](https://upload-images.jianshu.io/upload_images/5659111-dafc384213581ff6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
isDevMode()
loadFromConfig(config)
loadUserFromStateStore(name)
newChannel(name)
newEventHub()
newOrderer(url, opts)
newPeer(url, opts)
newTransactionID(admin)
queryChannels(peer, useAdmin)
queryInstalledChaincodes(peer, useAdmin)
saveUserToStateStore()
setAdminSigningIdentity(private_key, certificate, mspid)
setCryptoSuite(cryptoSuite)
setDevMode(devMode)
setStateStore(keyValueStore)
setTlsClientCertAndKey(clientCert, clientKey)
setUserContext(user, skipPersistence)
signChannelConfig(config)
updateChannel(request)
addOrderer(orderer)
addPeer(peer, roles)
close()
compareProposalResponseResults(The)
executeTransaction(request)
getChannelConfig(target)
getChannelConfigFromOrderer()
getChannelEventHub(name)
getChannelEventHubsForOrg(org_name)
getChannelPeer(name)
getGenesisBlock(request)
getMSPManager()
getName()
getOrderer(name)
getOrderers()
getOrganizations()
getPeer(name)
getPeers()
getPeersForOrg(org_name)
initialize(config)
joinChannel(request, timeout)
newChannelEventHub(peer)
queryBlock(blockNumber, target, useAdmin)
queryBlockByHash(block, target, useAdmin)
queryBlockByTxID(tx_id, target, useAdmin)
queryByChaincode(request)
queryInfo(target, useAdmin)
queryInstantiatedChaincodes(target, useAdmin)
queryTransaction(tx_id, target, useAdmin)
removeOrderer(orderer)
removePeer(peer)
sendInstantiateProposal(request, timeout)
sendTransaction(request)
sendTransactionProposal(request, timeout)
sendUpgradeProposal(request, timeout)
setMSPManager(msp_manager)
toString()
verifyProposalResponse(proposal_response)
installChaincode(request, timeout)
sendInstantiateProposal(request, timeout)//
sendTransaction(request) //https://fabric-sdk-node.github.io/Channel.html#sendInstantiateProposal
sendTransactionProposal(request, timeout)//https://fabric-sdk-node.github.io/Channel.html#sendTransactionProposal
sendTransaction(request)//https://fabric-sdk-node.github.io/Channel.html#sendTransaction
queryByChaincode(request)
queryInfo(target, useAdmin)
queryBlock(blockNumber, target, useAdmin)//https://fabric-sdk-node.github.io/Channel.html#queryBlock
queryBlockByTxID(tx_id, target, useAdmin)//https://fabric-sdk-node.github.io/Channel.html#queryBlockByHash
queryChannels(peer, useAdmin)
queryInstalledChaincodes(peer, useAdmin)
queryInstantiatedChaincodes(target, useAdmin)
queryTransaction(tx_id, target, useAdmin)
getChannelConfig(target)
connect()
registerBlockEvent(onEvent, onError)
registerTxEvent(txid, onEvent, onError)
registerChaincodeEvent(ccid, eventname, onEvent, onError)
fromString()
getAffiliation()
getCryptoSuite()
getIdentity()
getName()
getRoles()
getSigningIdentity()
isEnrolled()
setAffiliation(affiliation)
setEnrollment(privateKey, certificate, mspId)
setRoles(roles)
toString()
//https://fabric-sdk-node.github.io/Remote.html
//https://fabric-sdk-node.github.io/Orderer.html
//https://fabric-sdk-node.github.io/Peer.html
//https://fabric-sdk-node.github.io/Orderer.html