超级账本 REST 请求

Hyperledger REST request

我在查询 API 时遇到奇怪的错误。如果我这样做 t@28a3c2e772f0:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer chaincode invoke -o orderer.foo.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/foo.com/orderers/orderer.foo.com/msp/tlss/tlsca.foo.com-cert.pem -C balance -n mycc -c '{"Args":["deposit","a", "10"]}'

我得到正确答案

2017-08-24 19:08:57.988 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP 2017-08-24 19:08:57.988 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity 2017-08-24 19:08:57.989 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 003 Using default escc 2017-08-24 19:08:57.989 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 004 Using default vscc 2017-08-24 19:08:57.990 UTC [msp/identity] Sign -> DEBU 005 Sign: plaintext: 0A81070A6508031A0C08C9C8FCCC0510...0A076465706F7369740A01610A023130 2017-08-24 19:08:57.990 UTC [msp/identity] Sign -> DEBU 006 Sign: digest: 3DD0C365C4B78EFDACB28D44D2ACA9237CA30B58F85783C597302F145E646063 2017-08-24 19:08:57.994 UTC [msp/identity] Sign -> DEBU 007 Sign: plaintext: 0A81070A6508031A0C08C9C8FCCC0510...724C7D77E58B98A251A5E3991CE087BC 2017-08-24 19:08:57.994 UTC [msp/identity] Sign -> DEBU 008 Sign: digest: 56E1846030E5CC7DB5651C43F90EE2B6D0F851F33CFE62105CEF998A32902424 2017-08-24 19:08:57.995 UTC [chaincodeCmd] chaincodeInvokeOrQuery -> DEBU 009 ESCC invoke result: version:1 response:<status:200 message:"OK" payload:"[=11=]0[=11=]0[=11=]0[=11=]0[=11=]0[=11=]04@" > payload:"\n 3N0542[=11=]11125p2B2*652-216f\2K075032V\n824\n[=11=]4lscc24\n\n\n[=11=]4mycc2[=11=]20[=11=]32 \n[=11=]4mycc20\n[=11=]7\n[=11=]1a2[=11=]20[=11=]42\r\n[=11=]1a20[=11=]0[=11=]0[=11=]0[=11=]0[=11=]0[=11=]04@2\r00[=11=]120[=11=]0[=11=]0[=11=]0[=11=]0[=11=]0[=11=]04@\"32[=11=]4mycc2[=11=]31.0" endorsement:<endorser:"\n\nFooMSP23[=11=]5-----BEGIN -----\nMIICCzCCAbGgAwIBAgIRAO0nWiOZB55Sn+HOAKQnRBEwCgYIKoZIzj0EAwIwaTEL\nMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG\ncmFuY2lzY28xFDASBgNVBAoTC3RocmlsbHMuY29tMRcwFQYDVQQDEw5jYS50aHJp\nbGxzLmNvbTAeFw0xNzA4MjQxODIxMzVaFw0yNzA4MjIxODIxMzVaMFYxCzAJBgNV\nBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp\nc2NvMRowGAYDVQQDExFwZWVyMC50aHJpbGxzLmNvbTBZMBMGByqGSM49AgEGCCqG\nSM49AwEHA0IABD7X3plp7UuYtwOCcWmHGDqP9zxtmjkmpnHiVqUiQ4HSVHcm45pw\nrPdjCo/VqZjG0VzsxAVyuKRzB3zt44auOm6jTTBLMA4GA1UdDwEB/wQEAwIHgDAM\nBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICvVajYijpc+pSVXubVX1Xenut8/D+cX\nUi0E+sHQ+qKhMAoGCCqGSM49BAMCA0gAMEUCIQCD2DtlkOUBFiR4168HejsHHLHc\n+3w6ByZ4jUoYvhYYqAIgOQAWTQdSvxyihSNwMj5UZEYEfKOErBtilPr8AX9ieCo=\n-----END -----\n" signature:"0D[=11=]2 7M6J[=11=]36721a13537Z802X44&J[=11=]6%3561l[[=11=]2 51\"c15qJ316\r0+3&rL}w5302Q5314074" > 2017-08-24 19:08:57.995 UTC [chaincodeCmd] chaincodeInvokeOrQuery -> INFO 00a Chaincode invoke successful. result: status:200 payload:"[=11=]0[=11=]0[=11=]0[=11=]0[=11=]0[=11=]04@" 2017-08-24 19:08:57.995 UTC [main] main -> INFO 00b Exiting..... 但是,如果我这样做 curl -H "Content-Type: application/json" -X POST -d '{ "jsonrpc": "2.0", "method": "invoke", "params": {"type": 1,"chaincodeID":{"name":"mycc"},"ctorMsg": {"args":["get", "a"]},"secureContext": "foo" }, "id":5}' foo.com:7050/chaincode

我得到了看起来像损坏编码的奇怪字符。

不确定我是否有配置或实施错误。

不确定您得到的结果是什么,但是 Hyperledger Fabric v1.0.0+ 没有 REST API - 只有基于 gRPC 的 API.

虽然有许多客户端 SDK(Go、Java、Node、Python),但可以轻松调用和查询