async ~ await
- callback 함수처럼 비동기화를 동기화시키는 방법 중 하나
- 함수명 앞에 async를 입력함으로써 적용
- async의 리턴값은 항상 프로미스 객체
- await = 프로미스 객체의 수행상태가 완벽히 종료될 때까지 대기하다 그 결과를 반환하는 키워드
(await은 프로미스 객체 앞에 입력함)
- await는 async 내부에서만 사용 가능
JavaScript로 KAS(Klaytn API Service) 이용
- npm install caver-js-ext-kas로 작업 폴더 위치에서 패키지 사전 설치
- KAS를 이용하면 기존 방식보다 Klaytn을 더 쉽게 다룰 수 있음
const CaverExtKAS = require("caver-js-ext-kas");
const caver = new CaverExtKAS();
const accessKeyId = "";
const secretAccessKey = "";
const chainId = 1001;
// KAS API 초기화
caver.initKASAPI(chainId, accessKeyId, secretAccessKey);
const keyringContainer = new caver.keyringContainer();
// private key를 이용해 keyring 생성
const keyring = keyringContainer.keyring.createFromPrivateKey(
""
);
console.log(key.address);
keyringContainer.add(keyring);
// Token 생성 함수 => klaytnscope에서 확인 가능
async function createToken() {
const kip7 = await caver.kct.kip7.deploy(
{
name: "", // 토큰명
symbol: "", // 토큰 심볼
decimals: , // 소숫점 자리수
initialSupply: "", // 초기 발행량
},
keyring.address,
keyringContainer
);
console.log(kip7);
}
// Token 전송 함수
async function transferToken(address, amount) {
const didToken = await new caver.kct.kip7(
"지갑 주소"
);
await didToken.setWallet(keyringContainer);
const receipt = await didToken.transfer(address, amount, {
from: keyring.address,
});
console.log(receipt);
}
//createToken();
//transferToken("토큰을 받을 지갑 주소", 토큰수);
// 지갑에서 Token 조회
async function getBalance(address) {
const didToken = await new caver.kct.kip7(
"지갑 주소"
);
const balance = await didToken.balanceOf(address);
console.log(balance);
}
// getBalance("조회할 지갑 주소");
// 지갑 생성
async function createWallet() {
const wallet = await caver.kas.wallet.createAccount();
console.log(wallet);
}
//createWallet();
'블록체인 기술사업 교육 > JavaScript' 카테고리의 다른 글
블록체인 기술사업 교육 31일차 (0) | 2023.05.17 |
---|---|
블록체인 기술사업 교육 30일차 (0) | 2023.05.16 |
블록체인 기술사업 교육 7일차 (0) | 2023.04.11 |
블록체인 기술사업 교육 5일차 (0) | 2023.04.07 |
댓글