Maison > interface Web > js tutoriel > le corps du texte

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

WBOY
Libérer: 2024-08-14 10:44:10
original
1083 Les gens l'ont consulté

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

Stellar est un réseau blockchain open source pour des 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'avoir npm et Node.js installés 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
Copier après la connexion

Cette commande initialisera un nouveau projet Node.js.

Maintenant, installez le SDK Stellar pour JavaScript.

npm install stellar-sdk
Copier après la connexion

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 mis en place, 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 testnet 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");
Copier après la connexion

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());
Copier après la connexion

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());
Copier après la connexion

La fonction fundAccount envoie une demande à Friendbot pour déposer 10 000 Lumens de test sur votre compte. En conséquence, il enregistrera le message selon l'état de la transaction.

5. Effectuer une transaction

Maintenant que votre compte est fondé, 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");
Copier après la connexion

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);
}
Copier après la connexion

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 une nouvelle compétence est de mettre en pratique 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 de l'amour. Jusqu'à la prochaine fois, aimez, partagez et apprenez.

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!