«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Интеграция Stellar с JavaScript: создать dApp просто (для начинающих)

Интеграция Stellar с JavaScript: создать dApp просто (для начинающих)

Опубликовано 31 августа 2024 г.
Просматривать:419

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

Stellar — это сеть блокчейнов с открытым исходным кодом для быстрых и трансграничных финансовых транзакций. Если вы разработчик JavaScript и хотите создать децентрализованное приложение в звездной сети, это то, что вам нужно. В этом уроке мы узнаем, как интегрировать Stellar с JavaScript, от настройки среды до совершения первой транзакции.

Итак, начнем.

О, прежде чем мы начнем, нам нужны базовые знания JavaScript и наличие на вашем компьютере установленных npm и Node.js.

1. Улучшение окружающей среды

Сначала откройте терминал или командную строку и создайте новый каталог для проекта:

mkdir stellar-js
cd stellar-js
npm init -y

Эта команда инициализирует новый проект Node.js.

Теперь установите Stellar SDK для JavaScript.

npm install stellar-sdk

Но подождите. Что такое Stellar-SDK?

Stellar SDK — это мощная библиотека для взаимодействия с сетью Stellar с помощью JavaScript.

2. Подключение к звездной сети

Теперь, когда среда настроена, мы подключимся к сети Stellar. Нам требуется Stellar SDK и подключаемся к тестовой сети.

Что такое Testnet?

Testnet — это бесплатная сеть, позволяющая разработчикам тестировать свои приложения без подключения к реальным деньгам. Там, где есть основная сеть, которая подключается к реальным деньгам и требует XLM для покрытия комиссий за транзакции и т. д. Тестовая сеть похожа на основную сеть, в ней есть бесплатные тестовые люмены (XLM) под названием Friendbot.

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's 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 тысяч тестовых люменов на ваш счет. Соответственно, о статусе транзакции будет записываться сообщение.

5. Совершение транзакции

Теперь, когда ваша учетная запись создана, вы можете совершить свою первую транзакцию в сети Stellar. Мы создадим, подпишем и отправим транзакцию в звездную сеть. Мы отправим 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.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/jitendrachoudhary/integrating-stellar-with-javascript-building-dapp-is-easy-for-absolute-beginners-4n66?1 Если есть какие-либо нарушения, свяжитесь с Study_golang. @163.com удалить
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3