在jsonrpc near协议中使用call_function可以得到实际的数字是多少



在接近协议的jsonrpc中使用call_function的以下查询

http post https://rpc.testnet.near.org jsonrpc=2.0 id=test method=query   params:='{
"request_type": "call_function",
"finality": "final",
"account_id": "dev-1591261827342",
"method_name": "get_total_supply",
"args_base64": "e30="
}'

给出以下结果:

{
"id": "test",
"jsonrpc": "2.0",
"result": {
"block_hash": "FrKNvsEbqPsdT1ijLkUBNoX3SnUQbTCXjoPj7yC2WW5i",
"block_height": 9616038,
"logs": [],
"result": [
34,
49,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
34
]
}
}

如何将结果转换为"1000000000000000"的实际数字?

"result": [
34,
49,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
48,
34
]

是一个字节数组。NEAR SDK默认情况下对输入和输出使用JSON编码,但不限于此,所以如果转换它,就会得到"1000000000000000"。以下是转换它的Python片段:

>>> result = [34, 49, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 34]
>>> ''.join(chr(x) for x in result)
'"1000000000000000"'

最新更新