我希望有人可以改善veriblock的python-grpc示例

时间:2019-04-12 08:12:18

标签: veriblock

Veriblock没有python-grpc示例。由于编码问题,返回信息可能不可用。我不确定。我希望有人可以做一个榜样。非常感谢。

2 个答案:

答案 0 :(得分:1)

我正在研究一个更全面的示例,但是对于通过gRPC连接并显示当前块号和节点信息,这应该可以帮助您入门。

from __future__ import print_function
import json
import grpc
import veriblock_pb2 as vbk
import veriblock_pb2_grpc as vbkrpc


channel = grpc.insecure_channel('localhost:10500')
stub = vbkrpc.AdminStub(channel)

def GetStateInfoRequest():
    response = stub.GetStateInfo(vbk.GetStateInfoRequest())
    response = json.dumps({"connected_peer_count": response.connected_peer_count,
                   "network_height": response.network_height,
                   "local_blockchain_height": response.local_blockchain_height,
                   "network_version": response.network_version,
                   "program_version": response.program_version,
                   "nodecore_starttime": response.nodecore_starttime,
                   "wallet_cache_sync_height": response.wallet_cache_sync_height})
    print(response)

def getBlock():
    response = stub.GetInfo(vbk.GetInfoRequest())
    response = (response.number_of_blocks - 1)
    print(response)

getBlock()
GetStateInfoRequest()

希望有帮助。

答案 1 :(得分:0)

是否存在特定的python问题,例如调用函数或API或期望输出?

VeriBlock NodeCore确实通过grpc(https://grpc.io/docs/tutorials/basic/python.html)支持python

FWIW,grpc有一个预编译的输出,其中包括python https://github.com/VeriBlock/nodecore-releases/releases/tag/v0.4.1-grpc 蟒蛇     veriblock_pb2.py     veriblock_pb2_grpc.py

这里有一个C#示例:https://github.com/VeriBlock/VeriBlock.Demo.Rpc.Client(显然不是python,但作为概念示例可能有用)