2016-08-20 135 views
0

我只是按照区块链指南https://github.com/yeasy/blockchain_guide)在docker中测试hyperledger项目example02。在docker中测试chaincode_example02.go时发生错误

但是,当我输入peer chaincode deploy -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Function":"init", "Args": ["a","100", "b", "200"]}'时,出现以下错误。

Error: Non-empty JSON chaincode parameters must contain exactly 1 key: 'Args'

这很奇怪。我GOOGLE了它,但没有找到答案。任何人都可以帮助我?谢谢。

其实,当我使用pbft模式并输入docker-compose up。我收到以下错误,但我忽略了它。这是原因吗?

vp2_1 | 04:27:04.945 [peer] handleChat -> ERRO 88e Error handling message: Peer FSM cannot handle message (DISC_GET_PEERS) with payload size (0) while in state: created

vp2_1 | 04:27:04.953 [peer] handleChat -> ERRO 88f Error handling message: Peer FSM cannot handle message (DISC_GET_PEERS) with payload size (0) while in state: created

vp2_1 | 04:27:06.845 [peer] ensureConnected -> WARN 890 Touch service indicates dropped connections, attempting to reconnect...

vp2_1 | 04:27:09.945 [peer] handleChat -> ERRO 891 Error handling message: Peer FSM cannot handle message (DISC_GET_PEERS) with payload size (0) while in state: created

vp2_1 | 04:27:09.952 [peer] handleChat -> ERRO 892 Error handling message: Peer FSM cannot handle message (DISC_GET_PEERS) with payload size (0) while in state: created

vp2_1 | 04:27:12.845 [peer] ensureConnected -> WARN 893 Touch service indicates dropped connections, attempting to reconnect...

vp2_1 | 04:27:14.946 [peer] handleChat -> ERRO 894 Error handling message: Peer FSM cannot handle message (DISC_GET_PEERS) with payload size (0) while in state: created

+0

现在我只拿到了上黄色块的错误,那就是'错误:非空JSON chaincode参数必须包含1项:“ Args''。我通过打开一个新的docker来解决'Peer FSM'错误。任何人都可以帮助我?这些天让我疯了。 –

回答

2

格式发生了变化。参数“功能”已移至“参数”数组。所有参数应该是base64编码的。
旧格式:

{"function":"init","args":["a", "1000", "b", "2000"]}}

新格式:

{"args":['aW5pdA==', 'YQ==', 'MTAwMA==', 'Yg==', 'MjAwMA==']}

更新:格式再被更改了。 Base64编码不再需要。在最新的(测试2016年8月31日)面料的版本正确有效载荷是:

{“args”:['init', 'a', '100', 'b', '100']}

+0

这真的有帮助。谢谢! –

相关问题