Stellar와 JavaScript 통합: dApp 구축이 쉽습니다(완전 초보자용)

WBOY
풀어 주다: 2024-08-14 10:44:10
원래의
1164명이 탐색했습니다.

Integrating Stellar with JavaScript: Building dApp is Easy (for Absolute Beginners)

Stellar는 빠르고 국경을 초월한 금융 거래를 위한 오픈 소스 블록체인 네트워크입니다. 당신이 JavaScript 개발자이고 뛰어난 네트워크에 dApp을 구축하고 싶다면 이것이 당신을 위한 것입니다. 이 튜토리얼에서는 환경 설정부터 첫 번째 거래 수행까지 Stellar와 JavaScript를 통합하는 방법을 알아봅니다.

자, 시작해 보겠습니다.

아, 시작하기 전에 JavaScript에 대한 기본 지식이 필요하고 컴퓨터에 npm과 Node.js가 설치되어 있어야 합니다.

1. 환경 조성

먼저 터미널이나 명령 프롬프트를 열고 프로젝트에 대한 새 디렉터리를 만듭니다.

mkdir stellar-js
cd stellar-js
npm init -y
로그인 후 복사

이 명령은 새 Node.js 프로젝트를 초기화합니다.

이제 JavaScript용 Stellar SDK를 설치하세요.

npm install stellar-sdk
로그인 후 복사

그런데 잠깐만요 Stellar-SDK란 무엇인가요?

Stellar SDK는 JavaScript를 사용하여 Stellar 네트워크와 상호 작용할 수 있는 강력한 라이브러리입니다.

2. 스텔라 네트워크에 연결하기

이제 환경이 설정되었으니 Stellar 네트워크에 연결하겠습니다. Stellar SDK가 필요하며 테스트넷에 연결합니다.

테스트넷이란 무엇인가요?

Testnet은 개발자가 실제 돈에 연결하지 않고도 애플리케이션을 테스트할 수 있는 무료 네트워크입니다. 실제 돈에 연결되고 거래 수수료 등을 XLM으로 충당해야 하는 메인넷이 있는 경우 테스트넷은 메인넷과 유사하지만 Friendbot이라는 무료 테스트 루멘(XLM)이 있습니다.

const StellarSdk = require("stellar-sdk");
const server = new StellarSdk.Server("https://horizon-testnet.stellar.org");
로그인 후 복사

이렇게 하면 SDK가 초기화되고 테스트넷에 연결되도록 서버가 설정됩니다.

3. 새 계정 만들기

Stellar 네트워크와 상호 작용하려면 Stellar 계정이 필요합니다. 키-값 쌍을 생성하면 SDK를 사용하여 새 계정을 쉽게 만들 수 있습니다. 값 쌍은 공개 키와 개인 키로 구성됩니다.

const pair = StellarSdk.Keypair.random();

console.log('Public Key:', pair.publicKey());
console.log('Secret Key:', pair.secret());
로그인 후 복사

publicKey()는 계정의 식별자이고, secret()은 안전하게 유지되어야 하는 개인 키입니다.

4. 계좌 자금 조달

테스트넷에서는 Stellar의 Friendbot 서비스를 이용해 계정에 자금을 조달할 수 있습니다.

const fetch = require("node-fetch");

const fundAccount = async (publicKey) => {
  try {
    const response = await fetch(
      `https://friendbot.stellar.org?addr=${publicKey}`
    );
    const data = await response.json();
    console.log("Account funded:", data);
  } catch (error) {
    console.error("Error funding account:", error);
  }
};

fundAccount(pair.publicKey());
로그인 후 복사

fundAccount 기능은 Friendbot에 요청을 보내 귀하의 계정에 10,000 테스트 루멘을 입금하도록 합니다. 이에 따라 거래 상태에 따라 메시지가 기록됩니다.

5. 거래하기

이제 계정이 개설되었으므로 스텔라 네트워크에서 첫 번째 거래를 할 수 있습니다. 우리는 거래를 구축하고, 서명하고, 스텔라 네트워크에 제출할 것입니다. 우리 계정에서 다른 계정으로 10 XLM을 보내드립니다.

const sendPayment = async (publicKey) => {
  try {
    const account = await server.loadAccount(pair.publicKey());

    const transaction = new StellarSdk.TransactionBuilder(account, {
      fee: StellarSdk.BASE_FEE,
      networkPassphrase: StellarSdk.Networks.TESTNET,
    })
      .addOperation(
        StellarSdk.Operation.payment({
          destination: publicKey,
          asset: StellarSdk.Asset.native(),
          amount: "10",
        })
      )
      .setTimeout(30)
      .build();

    transaction.sign(pair);

    const result = await server.submitTransaction(transaction);
    console.log("Transaction successful:", result);
  } catch (error) {
    console.error("Error sending payment:", error);
  }
};

sendPayment("Another_Account's_Public_Key");
로그인 후 복사

6. 오류 처리 및 디버깅

쉼표( , ) 하나만 있어도 코드가 손상될 수 있습니다. 코드를 예상대로 유지하려면 오류를 처리하는 것이 매우 중요합니다.

try {
  const result = await server.submitTransaction(transaction);
  console.log("Success:", result);
} catch (error) {
  console.error("Error:", error.response.data.extras.result_codes);
}
로그인 후 복사

트랜잭션 중 오류를 포착하고 코드 디버깅에 도움이 되는 특정 오류를 기록합니다.

결론

우리는 방금 Stellar를 JavaScript와 통합하고 Stellar 테스트넷에서 첫 번째 거래를 성사시켰습니다. JavaScript는 개발자들 사이에서 널리 채택되므로 Stellar를 사용하여 블록체인으로 전환하는 것이 더 편리합니다.

새로운 기술을 배우는 가장 좋은 방법은 더 많은 프로젝트를 연습하는 것입니다. 작은 프로젝트를 만들고 컨셉을 실험해 보세요.

이 게시물이 도움이 되셨다면 저에게 계속 사랑을 보여주시는 것을 잊지 마세요. 다음 번에 좋아요를 누르고, 공유하고, 배워보세요.

또한 여기와 X, GitHub, LinkedIn에서 저를 팔로우하여 저와 계속 연락하실 수 있습니다.

위 내용은 Stellar와 JavaScript 통합: dApp 구축이 쉽습니다(완전 초보자용)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿