关于墨客的abi decode/encode

先看下这个网站 : https://abi.hashex.org/# 这是一个俄罗斯码农搞的,不过没有github库,也没有找到原始代码

简单说这个网站可以接收合约的abi定义,然后让用户选中具体方法后,填写参数,形成签名需要的数据载荷 payload

和abi解析相关的有 https://github.com/ethereumjs/ethereumjs-abi 和 https://github.com/ConsenSys/abi-decoder

ethereumjs-abi : 根据abi定义,decode 和 encode函数方法以及其参数

abi-decoder : 除了上述功能,还能解析Transaction receipt的事件日志

我想要的是

能解析abi
能根据方法名字自动找出需要的参数,并且按照规定的格式encode
解析日志
和上面介绍的开源代码区别在哪呢,他们的方法都是用户作为参数放进去的,而我想用abi定义,自动放进去,还有就是用typescript来写
在Java里面,这个就是Call by name或者反射机制就可以,我们在ts的上下文里面,来推导一下业务流程

解析abi,形成自己的数据结构 工数 0
可以列出和查询函数名 工数 1
可以罗列和查询函数的参数和类型 工数 2
根据函数名、参数组合,encode和decode,形成data。工数 3 (此处需要考虑参数类型的转换)
解析Transaction event 2
如果细节清楚,考虑到单元测试和构建开发环境,工数不会超过10个工作日

jcc-moac-abi 版本库https://github.com/JCCDex/jcc-moac-abi

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值