참고: 스마트 컨트랙트에서 특정 함수를 호출하려면, ABI (Application Binary Interface) 파일이 필요합니다. 트러플이 컨트랙트를 배포하면, ./build/contracts/에 abi 속성을 포함하는 .json 파일이 자동으로 생성됩니다.
위에서 작성한 테스트 코드에 다음 행을 추가하세요.
// test-klaytn.jsconstCaver=require('caver-js');constcaver=newCaver('http://127.0.0.1:8551');// 스마트 컨트랙트 주소 입력constcontractAddress='0x65ca27ed42abeef230a37317a574058ff1372b34'caver.klay.getCode(contractAddress).then(console.log);// 행 추가constKlaytnGreeter=require('./build/contracts/KlaytnGreeter.json');// 스마트 컨트랙트 주소 입력constklaytnGreeter=newcaver.klay.Contract(KlaytnGreeter.abi, contractAddress);klaytnGreeter.methods.greet().call().then(console.log);
테스트 코드를 실행하세요.
$nodetest-klaytn.js0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806341c0e1b514610051578063cfae321714610068575b600080fd5b34801561005d57600080fd5b506100666100f8565b005b34801561007457600080fd5b5061007d610189565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100bd5780820151...# This is from caver.klay.getCodeHello,Klaytn# This is from KlyatnGreeter.methods.greet()