fabsdk是Fabric SDK的主要包,fabsdk支持客戶端使用Hyperledger Fabric區(qū)塊鏈網(wǎng)絡(luò)。fabsdk基于配置創(chuàng)建上下文環(huán)境,上下文環(huán)境會(huì)在client包使用。
官方文檔:
https://godoc.org/github.com/hyperledger/fabric-sdk-go/pkg/fabsdk

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供晉源網(wǎng)站建設(shè)、晉源做網(wǎng)站、晉源網(wǎng)站設(shè)計(jì)、晉源網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、晉源企業(yè)網(wǎng)站模板建站服務(wù),10年晉源做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
Fabsdk使用基本流程如下:
A、使用配置實(shí)例化fabsdk實(shí)例
B、使用fabsdk實(shí)例基于組織和用戶創(chuàng)建上下文環(huán)境
C、以上下文環(huán)境作為參數(shù),使用New函數(shù)創(chuàng)建客戶端實(shí)例。可以為需要的每個(gè)上下文環(huán)境創(chuàng)建一個(gè)客戶端實(shí)例。
D、使用每個(gè)客戶端實(shí)例提供的功能函數(shù)編寫業(yè)務(wù)邏輯,構(gòu)建解決方案。
E、調(diào)用fsbsdk.Close()函數(shù)釋放資源和緩存。
var ErrAnonymousIdentity = errors.New("missing credentials")
如果創(chuàng)建身份的選項(xiàng)既不包含用戶名也不包含身份,返回ErrAnonymousIdentity。type Option func(opts *options) error
Option用于配置SDK。
type FabricSDK struct {
opts options
provider *context.Provider
cryptoSuite core.CryptoSuite
}FabricSDK為SDK管理的客戶端提供訪問(和上下文)func New(configProvider core.ConfigProvider, opts ...Option) (*FabricSDK, error)
New根據(jù)提供的選項(xiàng)集初始化SDK。 ConfigOptions提供應(yīng)用程序配置。
使用示例如下:sdk, err = fabsdk.New(config.FromFile("./config.yaml"))
func (sdk *FabricSDK) ChannelContext(channelID string, options ...ContextOption) contextApi.ChannelProvider
ChannelContext創(chuàng)建并返回通道上下文。
func (sdk *FabricSDK) Close()
釋放SDK維護(hù)的緩存和連接
func (sdk *FabricSDK) Config() (core.ConfigBackend, error)
Config返回所有SDK配置類型使用的配置后端
func (sdk *FabricSDK) Context(options ...ContextOption) contextApi.ClientProvider
Context創(chuàng)建并返回包含所有必需提供者的上下文客戶端。
type identityOptions struct {
signingIdentity msp.SigningIdentity
orgName string
username string
}
type ContextOption func(s *identityOptions) errorContextOption提供創(chuàng)建會(huì)話的參數(shù)func WithIdentity(signingIdentity msp.SigningIdentity) ContextOption
WithIdentity使用預(yù)先構(gòu)造的身份對(duì)象作為會(huì)話的憑證func WithUser(username string) ContextOption
WithUser使用指定用戶加載標(biāo)識(shí)/身份func WithOrg(org string) ContextOption
WithOrg使用指定的組織
使用示例:
var (
sdk *fabsdk.FabricSDK
org = "org1"
user = "Admin"
)
ctx := sdk.Context(fabsdk.WithOrg(org), fabsdk.WithUser(user))
type Option func(opts *options) error
func WithCorePkg(core sdkApi.CoreProviderFactory) Option 將核心實(shí)現(xiàn)注入SDKfunc WithCryptoSuiteConfig(cryptoConfigs ...interface{}) Option
WithCryptoSuiteConfig向SDK注入CryptoSuiteConfig接口,SDK接收每個(gè)CryptoSuiteConfig實(shí)現(xiàn)的全套接口或CryptoSuiteConfig每個(gè)實(shí)現(xiàn)的的子接口列表func WithEndpointConfig(endpointConfigs ...interface{}) Option
WithEndpointConfig向SDK注入EndpointConfig接口,SDK接收每個(gè)EndpointConfig實(shí)現(xiàn)的全套接口或每個(gè)EndpointConfig實(shí)現(xiàn)的的子接口列表func WithIdentityConfig(identityConfigs ...interface{}) Option
WithIdentityConfig向SDK注入IdentityConfig接口,SDK接收每個(gè)IdentityConfig實(shí)現(xiàn)的全套接口或每個(gè)IdentityConfig實(shí)現(xiàn)的的子接口列表func WithLoggerPkg(logger api.LoggerProvider) Option
WithLoggerPkg將logger實(shí)現(xiàn)注入到SDK中func WithMSPPkg(msp sdkApi.MSPProviderFactory) Option
WithMSPPkg將MSP實(shí)現(xiàn)注入SDKfunc WithServicePkg(service sdkApi.ServiceProviderFactory) Option
WithServicePkg將服務(wù)實(shí)現(xiàn)注入SDK
網(wǎng)站名稱:HyperLegerFabricSDK開發(fā)(三)——fabsdk
分享URL:http://chinadenli.net/article26/jpsjjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、App設(shè)計(jì)、網(wǎng)站設(shè)計(jì)、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)