baobab node: klaytn1.8.2
client: caver-js 1.3.1
caver.klay.getTransaction('0xa866a7a53dc03b5ca9cad883a9bad0b505c5092161e8bf412d23383280367b30');
에서
Error: [number-to-bn] while converting number undefined to BN.js instance, error: invalid number value. Value must be an integer, hex string, BN or BigNumber instance. Note, decimals are not supported. Given value: undefined
ERROR가 발생합니다.
caver-js 1.8.0 로 올려서 해도 동일합니다.
안녕하세요
caver-js에서 해당 트랜잭션을 파싱하는중 이슈가 있는것같습니다.
다른 트랜잭션은 정상적으로 가져올 수 있는것을 확인했습니다.
일단은 고쳐지기 전까지 아래와 같은 방법으로 Endpoint Node로 직접 요청을 보내실 수 있습니다.
Request
const body = {"jsonrpc":"2.0","id":1,"method":"klay_getTransactionByHash","params":["0xa866a7a53dc03b5ca9cad883a9bad0b505c5092161e8bf412d23383280367b30"]};
fetch("https://public-node-api.klaytnapi.com/v1/baobab", {
method: 'POST',
body: JSON.stringify(body),
});
Response
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"accessList": [],
"blockHash": "0x832f2bf7b1e413c8d0d9069bd8a17479676a5dcf12a2868962fce6166ab818e9",
"blockNumber": "0x5281bab",
"chainId": "0x3e9",
"from": "0x621a1507f654c9d3435e9e5ad0bbda6a5a22aca8",
"gas": "0xc350",
"hash": "0xa866a7a53dc03b5ca9cad883a9bad0b505c5092161e8bf412d23383280367b30",
"input": "0x",
"maxFeePerGas": "0xae9f7bcc00",
"maxPriorityFeePerGas": "0xae9f7bcc00",
"nonce": "0x38f5",
"senderTxHash": "0xa866a7a53dc03b5ca9cad883a9bad0b505c5092161e8bf412d23383280367b30",
"signatures": [
{
"R": "0xae41fac00e27cac1c2d7c3107e3868473ddd9c7eddb03d77f4653144ade9dfcd",
"S": "0x546f293e9fe54b611573e56456307c380ac957715b8f8e5d9f2a0373ec902d00",
"V": "0x1"
}
],
"to": "0x72172dd13dc75478cd54a972ede14e7f56210692",
"transactionIndex": "0x0",
"type": "TxTypeEthereumDynamicFee",
"typeInt": 30722,
"value": "0xde0b6b3a7640000"
}
}
네 저도 caver-js 의 fomatters.js에서
Ethereum Dynamic Fee Type 인경우
gasPrice 없는데 포멧 변환을 하다 발생한 오류 라는 것은 알고 있습니다.
언제 patch가 될까요?
일단 기다리셔야겠죠?
급하시면 caver-js를 패치하여 PR을 보내보시는것을 추천드립니다.
아래 공식 레포 주소입니다.