이 페이지는 영어로 된 기계 번역을 사용하므로 오류나 불명확한 언어가 포함될 수 있습니다. 가장 정확한 정보는 영어 원문을 참조하시기 바랍니다. 잦은 업데이트로 인해 일부 콘텐츠는 원래 영어로 되어 있을 수 있습니다. Crowdin에서 이 페이지의 번역을 개선하는 데 동 참하여 도움을 주세요. (Crowdin translation page, Contributing guide)
빌드 수수료 위임 예시
목차
- 1. 소개
- [2. 2.수수료 위임의 작동 방식
- 2.1 발신자의 트랜잭션 서명
- 2.2 수수료 납부자의 트랜잭션 서명
- 3. 수수료 대납을 위한 간단한 서버와 클라이언트
- 3.1 환경 설정
- 3.2 발신자의 클라이언트
- 3.2 수수료 납부자 서버
- 4. 실행 예제
- 4.1
feepayer_server.js
실행 - 4.2
발신자_클라이언트.js
실행 - 4.3
feepayer_server.js
확인 - 4.4 카이아스캔에서 보기
- 4.1
1. 소개
이 튜토리얼에서는 Kaia에서 수수료 위임 가치 전송 트랜잭션이 어떻게 작동하는지 보여드리기 위해 Kaia SDK(ethers-ext)를 사용하여 간단한 서버-클라이언트 예제를 만드는 과정을 안내합니다. 튜토리얼과 예제 코드는 카이로스 테스트넷에서 테스트되었습니다.
2. 수수료 위임의 작동 방식
Let's skim through how fee delegation works.
2.1 발신자가 트랜잭션 서명
Sender
는 트랜잭션을 보내기 전에 항상 트랜잭션에 서명해야 합니다.
트랜잭션에 서명하려면 주어진 개인 키로 트랜잭션에 서명하는 signTransaction을 사용하세요.
const senderAddr = "SENDER_ADDRESS";const senderPrivateKey = "SENDER_PRIVATE_KEY";const recieverAddr = "RECEIVER_ADDRESS";// 새 트랜잭션 생성let tx = { type: TxType.FeeDelegatedValueTransfer, to: recieverAddr, value: parseKaia("0.01"), from: senderAddress,}; // 트랜잭션에 서명tx = await senderWallet.populateTransaction(tx);console.log(tx);const senderTxHashRLP = await senderWallet.signTransaction(tx);console.log("senderTxHashRLP", senderTxHashRLP);
오류가 없으면 senderTxHashRLP
는 senderPrivateKey
가 서명한 서명된 트랜잭션을 갖게 됩니다.
이제 수수료 납부자에게 senderTxHashRLP
를 보내야 합니다. 이를 구현하는 방법에는 여러 가지가 있습니다. 이 튜토리얼에서는 수수료 납부자에게 senderTxHashRLP
를 보내는 간단한 서버-클라이언트 코드를 예시로 보여드리겠습니다.