首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何正确解析Javascript中的view_state

如何正确解析Javascript中的view_state
EN

Stack Overflow用户
提问于 2020-06-08 15:41:06
回答 1查看 75关注 0票数 2

我使用view_state RPC方法并通过JavaScript解析响应。然而,它似乎大多数返回的结果是非常有用的。是否有明确可打印文本的示例或分析数据的另一种方法?

代码语言:javascript
复制
const contract = await this.props.near.connection.provider.sendJsonRpc('query', { request_type: 'view_state', finality: 'final', account_id: 'blazenet', prefix_base64: '' });

let contractParsed = contract.values.map((data, i) => {
  return { 'key': atob(data.key).replace(/[^\x20-\x7E]/g, ""), 'val': atob(data.value).replace(/[^\x20-\x7E]/g, "") };
});

解析响应:

代码语言:javascript
复制
0: {key: "STATE", val: "blaze.betanet!as+vGj"JV0hxX_/b@zHQXz{Q?!p^/b@zHduiukuv"}
1: {key: "ui ]qU2s7AG5|c7`-?", val: ""}
2: {key: "ui bJ+e,-,[y]CsKUB", val: ""}
3: {key: "ui *EDfC*,#,/", val: ""}
4: {key: "ui ZB\[`VR\/a", val: ""}
5: {key: "ui _|XW==. 0M$l", val: ""}
6: {key: "ui \;>bR?{Ut7/Q", val: ""}
7: {key: "uk", val: " ZB\[`VR\/a"}
8: {key: "uk", val: " \;>bR?{Ut7/Q"}
9: {key: "uk", val: " ]qU2s7AG5|c7`-?"}
10: {key: "uk", val: " *EDfC*,#,/"}
11: {key: "uk", val: " _|XW==. 0M$l"}
12: {key: "uk", val: " bJ+e,-,[y]CsKUB"}
13: {key: "uv", val: "i\s1"}
14: {key: "uv", val: "z-:HYc:"}
15: {key: "uv", val: "Z|"}
16: {key: "uv", val: "Vk/"}
17: {key: "uv", val: "ESQlVA"}
18: {key: "uv", val: "`>(u{|{"}
EN

回答 1

Stack Overflow用户

发布于 2020-06-08 16:37:44

keyvalue都用base64编码。

键和值可以用Borsh序列化,为了反序列化它,您需要知道每个键和值的架构。阅读更多关于https://borsh.io的信息

STATE下的值序列化合同的主要结构。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62265861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档