안녕하세요 KAS 커뮤니티에서 댓글이 달리지 않아서 여기서도 여쭈어 봅니다…!
API를 사용중입니다.
이미 배포된 Contract의 내부 함수를 사용할 때
기존에는
https://wallet-api.klaytnapi.com/v2/tx/contract/execute 를 사용해서
Input값에 HEX코드를 직접 넣어서 사용하고있습니다.
ABI값이 아닌 단순하게 HEX코드를 넣고 있는거라 다른 컨트랙트 함수 호출 시 매번 새로 함수를 만들어서 만들어야 하더라구요
abi를 이용해서 쉽게 사용하는 방법이 있을까요?
abi의 인자값을 넣어서 사용해야하는 함수들입니다.
답변 부탁드립니다…!!
@multicore
안녕하세요.
Caver 를 사용하셔서 input 값을 만드시면 될 거 같습니다.
GitHub - ground-x/caver-js-ext-kas 라이브러리를 활용해보시는 건 어떨까요?
아래와 같이 input 값 만들어보실 수 있습니다.
const changeOwnerAbi = {
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
const input = caver.abi.encodeFunctionCall(changeOwnerAbi, ["0x3e2ac308cd78ac2fe162f9522deb2b56d9da9499"])
참고용 Docs: caver.abi - Klaytn Docs