집돌이 공대남 IT

web3.js와 ethers.js 두 큰 이더리움 라이브러리의 사용법 본문

IT/파이썬

web3.js와 ethers.js 두 큰 이더리움 라이브러리의 사용법

집공이 2023. 8. 3. 12:00

안녕하세요! 공대남입니다!

오늘은 이더리움 개발에 필수적인 두 가지 라이브러리인 web3.js와 ethers.js에 대한 사용법에 대해 알아보겠습니다.

저도 나중에 볼려고 정리해놓습니다!

web3.js: 이더리움과의 연결 통로

web3.js는 자바스크립트로 작성된 이더리움 라이브러리입니다.

이더리움 블록체인과 상호 작용하고 스마트 컨트랙트를 다룰 때 이 라이브러리가 중요한 역할을 합니다.

  1. web3.js 설치
npm install web3
  1. web3.js 인스턴스 생성
const Web3 = require('web3');
const web3 = new Web3('http://localhost:8545');
  1. 계정 및 잔액 조회
const accounts = await web3.eth.getAccounts();
const balance = await web3.eth.getBalance(accounts[0]);
  1. 스마트 컨트랙트와 상호작용
const contract = new web3.eth.Contract(abi, contractAddress);
const result = await contract.methods.myMethod().call();

 

ethers.js: 더 가벼운 대안

ethers.js는 web3.js보다 가벼운 라이브러리로, 이더리움 DApp 개발에 많이 사용됩니다. 이 라이브러리의 주요 특징 중 하나는 Etherscan 같은 외부 서비스를 이용하여 이더리움 블록체인과 통신할 수 있다는 것입니다.

  1. ethers.js 설치
npm install ethers
  1. ethers.js 인스턴스 생성
const ethers = require('ethers');
const provider = new ethers.providers.JsonRpcProvider('http://localhost:8545');
  1. 계정 및 잔액 조회
const wallet = ethers.Wallet.createRandom();
const balance = await provider.getBalance(wallet.address);
  1. 스마트 컨트랙트와 상호작용
const contract = new ethers.Contract(contractAddress, abi, provider);
const result = await contract.myMethod();

web3.js와 ethers.js는 이더리움 개발의 핵심 라이브러리입니다. 이 두 라이브러리의 사용법을 익히면 이더리움 DApp 개발에 큰 도움이 될 것입니다.