본문으로 건너뛰기

JavaScript API를 사용하여 NEAR와 상호 작용

빠른 참고

near-api-js란 무엇인가요?

near-api-js는 NEAR 블록체인과 상호 작용하는 완전한 라이브러리입니다. 이는 브라우저 또는 Node.js 런타임에서 사용될 수 있습니다.

일반적으로 KeyStore를 사용한 connect로 연결을 생성할 수 있습니다. 연결 객체를 통해, 다음과 같은 것들을 할 수 있습니다.

  • 브라우저에서 지갑과 상호 작용.
  • 다음과 같은 것들을 위해 계정 객체 인스턴스화:
    • 토큰 전송
    • 컨트랙트 배포
    • 계정 검사, 생성 또는 삭제
    • 계정 키 관리
  • 컨트랙트 객체를 인스턴스화하여 스마트 컨트랙트 메서드 호출

라이브러리에는 일부 utils 함수도 포함되어 있습니다.

웹 브라우저에서 NEAR 통합을 빠르게 시작하려면 웹 프론트엔드 통합 문서를 읽어보세요. :::

JavaScript SDK 는 스마트 컨트랙트 개발을 위한 라이브러리입니다. 여기에는 스마트 컨트랙트 코드를 작성하는 데 사용하는 클래스와 함수가 포함되어 있습니다.

JavaScript API 는 NEAR와 상호 작용할 수 있는 모든 가능한 명령을 위한 완전한 라이브러리입니다. 이는 RPC 엔드포인트 래퍼, 브라우저에서 NEAR 지갑과 상호 작용하는 라이브러리, 키 관리 도구입니다. :::


설치

패키지에 near-api-js를 의존성(dependency)으로 포함합니다.

npm i --save near-api-js

Import

브라우저 또는 Node.js 런타임에서 API 라이브러리를 사용할 수 있습니다. 일부 기능은 여러 환경 중 하나에서만 사용할 수 있습니다. 예를 들어 WalletConnection는 브라우저 전용이며, 각 환경마다 서로 다른 KeyStore 공급자가 존재합니다.

import * as nearAPI from "near-api-js";

키 저장소(Key Store)

트랜잭션에 서명하는 경우 키 저장소 를 생성해야 합니다. 브라우저에서 사용자에게 지갑으로 로그인하도록 요청하면, LocalStorage KeyStore가 사용됩니다.

// creates keyStore using private key in local storage

const { keyStores } = nearAPI;
const myKeyStore = new keyStores.BrowserLocalStorageKeyStore();

BrowserLocalStorageKeyStore 클래스

NEAR에 연결

connect에서 반환된 객체는 API의 모든 명령에 대한 진입점입니다. 트랜잭션에 서명하려면 연결을 만들기 위한 KeyStore가 필요합니다.

const { connect } = nearAPI;

const connectionConfig = {
networkId: "testnet",
keyStore: myKeyStore, // first create a key store
nodeUrl: "https://rpc.testnet.near.org",
walletUrl: "https://wallet.testnet.near.org",
helperUrl: "https://helper.testnet.near.org",
explorerUrl: "https://explorer.testnet.near.org",
};
const nearConnection = await connect(connectionConfig);

connect 모듈