caver-js
caver-js는 개발자가 HTTP 또는 웹소켓 연결을 사용하여 Klaytn 노드와 상호작용할 수 있도록 하는 자바스크립트 API 라이브러리입니다. npm 이용이 가능합니다.

주요 기능

  • HTTP 및 웹소켓을 통한 Klaytn의 JSON-RPC 클라이언트 API의 완전한 구현
  • Klaytn 트랜잭션, 계정 및 계정 키 유형 지원
  • Klaytn 네트워크에서 스마트 컨트랙트를 배포하고 실행하기위한 자바스크립트 스마트 컨트랙트 패키지
  • Klaytn 계정 관리를 위한 인메모리 지갑
  • 수수료 위임 지원
  • Klaytn Wallet 키 형식 지원
  • RLP에서 트랜잭션 오브젝트의 인코딩/디코딩
  • 트랜잭션 객체의 서명
  • web3-js 애플리케이션을 caver-js로 쉽게 포팅

caver-js의 패키지

아래는 caver-js로 제공되는 패키지들입니다.

오류 코드 개선

web3.js를 통한 Ethereum의 오류 메시지로는 오류가 발생한 위치를 거의 파악하지 못합니다. caver-js는 Klaytn에서 오류 메시지를 포착하도록 인터페이스를 개선합니다.
자세한 내용은 아래와 같이 트랜잭션 영수증의 txError 값에서 찾을 수 있습니다:
1
Error: runtime error occurred in interpreter
2
{
3
"blockHash": "0xe7ec35c9fff1178d52cee1d46d40627d19f828c4b06ad1a5c3807698b99acb20",
4
"blockNumber": 7811,
5
"contractAddress": null,
6
"from": "0xa8a2d37727197cc0eb827f8c5a3a3aceb26cf59e",
7
"gasUsed": 9900000000,
8
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
9
"status": false,
10
"to": "0xf8425b0f65147969621f9390ca06139c7b439497",
11
"transactionHash": "0x85ce2b307899c90144442d9b3236827ac57375c522be2435093aebfd920b8c58",
12
"transactionIndex": 0,
13
"txError": "0x2",
14
"events": {}
15
}
Copied!

Klaytn에 트랜잭션을 보낼 때 주의사항

Klaytn uses a fixed gas price (750 ston = 750 * 10^9). Klaytn 네트워크에 제출된 다른 가스 가격의 트랜잭션은 거절됩니다. For more information about the gas price, see Gas and Unit Price Overview The price of gas used in the network can be obtained by using caver.rpc.klay.getGasPrice.
If gasPrice is not defined when you sign or submit a transaction, caver-js uses the caver.rpc.klay.getGasPrice RPC call to set the gas price of the transaction.

링크