在IBM Bluemix上部署Hyperledger应用

IBM Bluemix (‎)是一个基于cloud的应用开发和部署平台,提供包括多种服务和运行环境的支持。对Hyperledger应用开发者而言,IBM Bluemix提供免费的入门级区块运行环境。本文介绍了在IBM Bluemix上部署Hyperledger应用的基本过程。

第一步: 在 Bluemix中选择区块服务

登录Bluemix后,在Catalog页面中选择Application Services下的Blochain服务。

在IBM Bluemix上部署Hyperledger应用

确认区块服务的名称,然后点击Create按钮以创建区块服务。

在IBM Bluemix上部署Hyperledger应用

在新建的区块服务页面上点击LAUNCH按钮以启动区块服务,并显示其具体信息。

在IBM Bluemix上部署Hyperledger应用

在IBM Bluemix上部署Hyperledger应用

第二步: 在 Bluemix区块服务中注册用户

首先在区块服务页面中选择 APIs, 然后展开Network's Enroll IDs列表以获取预置的用户名和密码列表 。

在IBM Bluemix上部署Hyperledger应用

然后向选定的区块节点发送如下请求以注册用户

POST https://e1bb641577f249a88acca04da0272249-vp3.us.blockchain.ibm.com:444/registrar Content-Type: application/json { "enrollId": "admin", "enrollSecret": "19725f3d88" }

注册成功的响应为

{ "OK": "Login successful for user 'admin'." } 第三步: 在 Bluemix区块服务中发布应用代码, 前提是应用的GoLang代码必须在github.com上。 POST https://e1bb641577f249a88acca04da0272249-vp3.us.blockchain.ibm.com:444/chaincode Content-Type: application/json { "jsonrpc": "2.0", "method": "deploy", "params": { "type": 1, "chaincodeID": { "path": "https://github.com/huyouhengbc/Hyperledger/HelloWorld" }, "ctorMsg": { "function": "init", "args": [ ] }, "secureContext": "admin" }, "id": 1 }

发布成功的响应为

{ "jsonrpc": "2.0", "result": { "status": "OK", "message": "e2623e76371a16ca86d97bfb90bdab95885939bf4f2fa40133d65bca4aace27eaf94d8cd10438b80de097442916f6bfef87fb45a6cd678e3cb6ec0bd8dd008c2" }, "id": 1 } 第四步: 测试应用代码,

Query请求

POST https://e1bb641577f249a88acca04da0272249-vp3.us.blockchain.ibm.com:444/chaincode Content-Type: application/json { "jsonrpc": "2.0", "method": "query", "params": { "type": 1, "chaincodeID": { "name": "e2623e76371a16ca86d97bfb90bdab95885939bf4f2fa40133d65bca4aace27eaf94d8cd10438b80de097442916f6bfef87fb45a6cd678e3cb6ec0bd8dd008c2" }, "ctorMsg": { "function": "hello", "args": [ ] }, "secureContext": "admin" }, "id": 3 }

Query响应

200 OK access-control-allow-headers: accept, content-type Access-Control-Allow-Origin: * Content-Type: application/json Date: Sun, 30 Oct 2016 05:13:58 GMT Content-Length: 73 Server: nghttpx nghttp2/1.14.0-DEV Via: 1.1 nghttpx X-Firefox-Spdy: h2 {"jsonrpc":"2.0","result":{"status":"OK","message":"Hello World"},"id":3}

Invoke请求

POST https://e1bb641577f249a88acca04da0272249-vp3.us.blockchain.ibm.com:444/chaincode Content-Type: application/json { "jsonrpc": "2.0", "method": "invoke", "params": { "type": 1, "chaincodeID": { "name": "e2623e76371a16ca86d97bfb90bdab95885939bf4f2fa40133d65bca4aace27eaf94d8cd10438b80de097442916f6bfef87fb45a6cd678e3cb6ec0bd8dd008c2" }, "ctorMsg": { "function": "hello", "args": [ ] }, "secureContext": "admin" }, "id": 3 }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/5bfac6c06ee8a578abcf187b7c5a7041.html