我有一个从Covalent (https://api.covalenthq.com/v1/137/events/topics/)检索到的原始日志数据列表。我知道这个日志对应的事件,但是我如何将它解码成这个事件呢?
它看起来像" 0x0000000000000000000000000000000000000000000000000000002d0000000000000000000000000000000097922d241bd4e4ef4bb0e13693284h8ea75a6c52 ">
事件类似于
[Event("TokenFound")]
public class TokenFoundEventDTO : IEventDTO
{
[Parameter("uint256", "tokenId", 1, false )]
public BigInteger TokenId { get; set; }
[Parameter("address", "buyer", 2, false )]
public string? Buyer { get; set; }
}
我期望以太坊提供一些东西,我可以将原始日志数据转换为这样的事件,但我找不到这样的东西。谁能给我指路吗?
谢谢!
令牌id似乎是一个256位的整型。这是32个字节,在十六进制字符串中组成64个字符。如果你修剪开始的0x
,并在中间分割其余部分,你将留下两个64个字符的字符串。
000000000000000000000000000000000000000000000000000000000000002d
00000000000000000000000097922d241bd4e4ef4bb0e13693284H8ea75a6c52
第一个(以"2d"
结尾)应该被解析为BigInteger
(在此之前再加上0x
),第二个似乎是买方地址(可能去掉前导零)。