"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Intégrer Stellar à JavaScript : créer une dApp est facile (pour les débutants absolus)

Intégrer Stellar à JavaScript : créer une dApp est facile (pour les débutants absolus)

Publié le 2024-08-31
Parcourir:353

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

Stellar est un réseau blockchain open source pour les transactions financières rapides et transfrontalières. Si vous êtes un développeur JavaScript et que vous souhaitez créer dApp sur un réseau exceptionnel, c'est ce qu'il vous faut. Dans ce tutoriel, nous apprendrons comment intégrer Stellar à JavaScript, de la configuration de l'environnement à la réalisation de votre première transaction.

Alors, commençons.

Oh, avant de commencer, nous avons besoin de connaissances de base en JavaScript et d'installer npm et Node.js sur votre machine.

1. Assurer l'environnement

Tout d'abord, ouvrez votre terminal ou votre invite de commande et créez un nouveau répertoire pour le projet :

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

Cette commande initialisera un nouveau projet Node.js.

Maintenant, installez le SDK Stellar pour JavaScript.

npm install stellar-sdk

Mais attendez Qu'est-ce que Stellar-SDK ?

Stellar SDK est une bibliothèque puissante pour interagir avec le réseau Stellar à l'aide de JavaScript.

2. Connexion au réseau Stellar

Maintenant que l'environnement est configuré, nous allons nous connecter au réseau Stellar. Nous avons besoin du SDK Stellar et nous connectons au testnet.

Qu'est-ce que Testnet ?

Testnet est un réseau gratuit permettant à un développeur de tester son application sans se connecter à de l'argent réel. Là où il existe un réseau principal qui se connecte à de l'argent réel et nécessite que XLM couvre les frais de transaction, etc. Le réseau de test est similaire au réseau principal, il dispose de Lumens de test gratuits (XLM) appelés Friendbot.

const StellarSdk = require("stellar-sdk");
const server = new StellarSdk.Server("https://horizon-testnet.stellar.org");

Cela initialisera le SDK et configurera le serveur pour qu'il se connecte au testnet.

3. Création d'un nouveau compte

Pour interagir avec le réseau Stellar, vous devez disposer d'un compte Stellar. Vous pouvez facilement créer un nouveau compte à l'aide du SDK en générant une paire clé-valeur. La paire de valeurs se compose d'une clé publique et d'une clé privée.

const pair = StellarSdk.Keypair.random();

console.log('Public Key:', pair.publicKey());
console.log('Secret Key:', pair.secret());

Le publicKey() est l'identifiant de votre compte, tandis que le secret() est votre clé privée, qui doit être conservée en sécurité.

4. Financement du compte

Dans le testnet, vous pouvez approvisionner votre compte en utilisant le service Friendbot de Stellar.

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());

La fonction fundAccount envoie une demande à Friendbot pour déposer 10 000 Lumens de test sur votre compte. En conséquence, le message sera enregistré en fonction du statut de la transaction.

5. Effectuer une transaction

Maintenant que votre compte est créé, vous pouvez effectuer votre première transaction sur le réseau stellaire. Nous allons construire, signer et soumettre la transaction au réseau stellaire. Nous enverrons 10 XLM de notre compte vers un autre compte.

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. Gestion des erreurs et débogage

Même une seule virgule ( , ) peut ruiner votre code. La gestion des erreurs est très importante pour garder le code sur la bonne voie attendue.

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

Cela détecte toutes les erreurs pendant la transaction et enregistre l'erreur spécifique qui aide à déboguer le code.

Conclusion

Nous venons d'intégrer Stellar avec JavaScript et d'effectuer notre première transaction sur le testnet Stellar. Comme JavaScript est largement adopté par les développeurs, la transition vers la blockchain avec Stellar est plus pratique.

La meilleure façon d'acquérir de nouvelles compétences est de pratiquer davantage de projets. Construisez de petits projets et expérimentez les concepts.

Si vous trouvez cet article utile, n'oubliez pas de continuer à me montrer votre amour. Jusqu'à la prochaine fois, aimez, partagez et apprenez.

Vous pouvez également rester en contact avec moi en me suivant ici et sur X, GitHub et LinkedIn.

Déclaration de sortie Cet article est reproduit sur : https://dev.to/jitendrachoudhary/integrating-stellar-with-javascript-building-dapp-is-easy-for-absolute-beginners-4n66?1 En cas d'infraction, veuillez contacter study_golang @163.com supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3