python-sdk
python-sdk copied to clipboard
将节点加入为观察者节点没有做防止重复限制
搭链操作参考:
https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html
节点入网、退网相关操作参考: https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/manual/node_management.html
例:
- 将指定节点(node0)加入为观察者节点
# 以将node0加入观察者节点为例:
# 获取node0的NodeID
$ cat ~/fisco/nodes/127.0.0.1/node0/conf/node.nodeid
2f0a2cfb4b2e5f63fda88c2bdb9edd8f8dd2a408c04c1d4fda8a75ad1047baf87c2b18f4dbf20d67db84019b221bf50b683eeebade7e5eaffefef876e5db9a8c
# 将node0加入为观察者节点
$ ./console.py addObserver 2f0a2cfb4b2e5f63fda88c2bdb9edd8f8dd2a408c04c1d4fda8a75ad1047baf87c2b18f4dbf20d67db84019b221bf50b683eeebade7e5eaffefef876e5db9a8c
# 输出信息如下:
INFO >> user input : ['addObserver', '2f0a2cfb4b2e5f63fda88c2bdb9edd8f8dd2a408c04c1d4fda8a75ad1047baf87c2b18f4dbf20d67db84019b221bf50b683eeebade7e5eaffefef876e5db9a8c']
INFO >> compile with solc compiler
INFO >> addObserver
>> status: 0x0
>> transactionHash: 0x3d416bdabdb2e9032c019b73c1eefc71f2edf75c7c5eaca7cd1134de688901e2
>> gasUsed: 0x7658
>> addObserver succ, output: 1
- 再次将指定节点(node0)加入为观察者节点,期望返回提示信息“the node is already in the observer list”,可是仍然返回添加成功
# 将node0加入为观察者节点
$ ./console.py addObserver 2f0a2cfb4b2e5f63fda88c2bdb9edd8f8dd2a408c04c1d4fda8a75ad1047baf87c2b18f4dbf20d67db84019b221bf50b683eeebade7e5eaffefef876e5db9a8c
# 输出信息如下:
INFO >> user input : ['addObserver', '2f0a2cfb4b2e5f63fda88c2bdb9edd8f8dd2a408c04c1d4fda8a75ad1047baf87c2b18f4dbf20d67db84019b221bf50b683eeebade7e5eaffefef876e5db9a8c']
INFO >> compile with solc compiler
INFO >> addObserver
>> status: 0x0
>> transactionHash: 0x39fdc047e31ebc1c6d1b33a0a6bc2c825810fa12e2354b8655287cbd2d2afb28
>> gasUsed: 0x7658
>> addObserver succ, output: 1
需要在Python SDK中,对addObserver
操作做防重:
- 通过
getObserverList
接口获取当前观察节点列表 - 将要添加的节点Node ID与获取的节点列表做对比,若已经在观察节点列表中,则返回提示信息
the node is already in the observer list