Stellar는 빠르고 국경을 초월한 금융 거래를 위한 오픈 소스 블록체인 네트워크입니다. 당신이 JavaScript 개발자이고 뛰어난 네트워크에 dApp을 구축하고 싶다면 이것이 당신을 위한 것입니다. 이 튜토리얼에서는 환경 설정부터 첫 번째 거래 수행까지 Stellar와 JavaScript를 통합하는 방법을 알아봅니다.
자, 시작해 보겠습니다.
아, 시작하기 전에 JavaScript에 대한 기본 지식이 필요하고 컴퓨터에 npm과 Node.js가 설치되어 있어야 합니다.
먼저 터미널이나 명령 프롬프트를 열고 프로젝트에 대한 새 디렉터리를 만듭니다.
mkdir stellar-js cd stellar-js npm init -y
이 명령은 새 Node.js 프로젝트를 초기화합니다.
이제 JavaScript용 Stellar SDK를 설치하세요.
npm install stellar-sdk
그런데 잠깐만요 Stellar-SDK란 무엇인가요?
Stellar SDK는 JavaScript를 사용하여 Stellar 네트워크와 상호 작용할 수 있는 강력한 라이브러리입니다.
이제 환경이 설정되었으니 Stellar 네트워크에 연결하겠습니다. Stellar SDK가 필요하며 테스트넷에 연결합니다.
테스트넷이란 무엇인가요?
Testnet은 개발자가 실제 돈에 연결하지 않고도 애플리케이션을 테스트할 수 있는 무료 네트워크입니다. 실제 돈에 연결되고 거래 수수료 등을 XLM으로 충당해야 하는 메인넷이 있는 경우 테스트넷은 메인넷과 유사하지만 Friendbot이라는 무료 테스트 루멘(XLM)이 있습니다.
const StellarSdk = require("stellar-sdk"); const server = new StellarSdk.Server("https://horizon-testnet.stellar.org");
이렇게 하면 SDK가 초기화되고 테스트넷에 연결되도록 서버가 설정됩니다.
Stellar 네트워크와 상호 작용하려면 Stellar 계정이 필요합니다. 키-값 쌍을 생성하면 SDK를 사용하여 새 계정을 쉽게 만들 수 있습니다. 값 쌍은 공개 키와 개인 키로 구성됩니다.
const pair = StellarSdk.Keypair.random(); console.log('Public Key:', pair.publicKey()); console.log('Secret Key:', pair.secret());
publicKey()는 계정의 식별자이고, secret()은 안전하게 유지되어야 하는 개인 키입니다.
테스트넷에서는 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 테스트 루멘을 입금하도록 합니다. 이에 따라 거래 상태에 따라 메시지가 기록됩니다.
이제 계정이 개설되었으므로 스텔라 네트워크에서 첫 번째 거래를 할 수 있습니다. 우리는 거래를 구축하고, 서명하고, 스텔라 네트워크에 제출할 것입니다. 우리 계정에서 다른 계정으로 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");
쉼표( , ) 하나만 있어도 코드가 손상될 수 있습니다. 코드를 예상대로 유지하려면 오류를 처리하는 것이 매우 중요합니다.
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!