Rumah  >  Artikel  >  hujung hadapan web  >  Mengintegrasikan Stellar dengan JavaScript: Membina dApp adalah Mudah (untuk Pemula Mutlak)

Mengintegrasikan Stellar dengan JavaScript: Membina dApp adalah Mudah (untuk Pemula Mutlak)

WBOY
WBOYasal
2024-08-14 10:44:101085semak imbas

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

Stellar ialah rangkaian rantaian blok sumber terbuka untuk transaksi kewangan yang pantas dan merentas sempadan. Jika anda seorang pembangun JavaScript dan ingin membina dApp pada rangkaian yang cemerlang, ini adalah perkara untuk anda. Dalam tutorial ini, kami akan mempelajari cara mengintegrasikan Stellar dengan JavaScript, daripada menyediakan persekitaran hingga membuat transaksi pertama anda.

Jadi, mari kita mulakan.

Oh, sebelum kita mula, kami memerlukan pengetahuan asas JavaScript dan memasang npm dan Node.js pada mesin anda.

1. Menduduki Persekitaran

Mula-mula, buka terminal atau command prompt anda dan buat direktori baharu untuk projek:

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

Arahan ini akan memulakan projek Node.js baharu.

Sekarang, pasang Stellar SDK untuk JavaScript.

npm install stellar-sdk

Tetapi, tunggu Apakah Stellar-SDK?

Stellar SDK ialah perpustakaan yang berkuasa untuk berinteraksi dengan rangkaian Stellar menggunakan JavaScript.

2. Menyambung ke Rangkaian Stellar

Sekarang, persekitaran telah disediakan, kami akan berhubung dengan rangkaian Stellar. Kami memerlukan Stellar SDK dan menyambung ke testnet.

Apakah Testnet?

Testnet ialah rangkaian percuma untuk digunakan untuk pembangun menguji aplikasi mereka tanpa menyambung kepada wang sebenar. Di mana terdapat mainnet yang bersambung kepada wang sebenar dan memerlukan XLM untuk menampung yuran transaksi, dsb. Testnet adalah serupa dengan mainnet, ia mempunyai ujian Lumens (XLM) percuma yang dipanggil Friendbot.

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

Ini akan memulakan SDK dan menetapkan pelayan untuk menyambung ke testnet.

3. Mencipta Akaun Baru

Untuk berinteraksi dengan rangkaian Stellar, anda perlu mempunyai akaun Stellar. Anda boleh membuat akaun baharu dengan mudah menggunakan SDK dengan menjana pasangan nilai kunci. Pasangan nilai terdiri daripada kunci awam dan peribadi.

const pair = StellarSdk.Keypair.random();

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

Kekunci public() ialah pengecam akaun anda, manakala rahsia() ialah kunci peribadi anda, yang harus disimpan selamat.

4. Membiayai Akaun

Dalam testnet, anda boleh membiayai akaun anda menggunakan perkhidmatan Friendbot 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());

Fungsi fundAccount menghantar permintaan kepada Friendbot untuk mendepositkan 10k Lumen ujian dalam akaun anda. Sehubungan itu, kepada status transaksi, ia akan log mesej.

5. Membuat Transaksi

Sekarang, setelah akaun anda diasaskan, anda boleh membuat transaksi pertama anda di rangkaian cemerlang. Kami akan membina, menandatangani dan menyerahkan transaksi kepada rangkaian cemerlang. Kami akan menghantar 10 XLM dari akaun kami ke akaun lain.

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. Ralat Pengendalian dan Nyahpepijat

Malah satu koma ( , ) boleh merosakkan kod anda. Mengendalikan ralat adalah sangat penting untuk memastikan kod pada landasan yang dijangkakan.

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

Ini menangkap sebarang ralat semasa urus niaga dan mencatat ralat khusus yang membantu menyahpepijat kod.

Kesimpulan

Kami baru sahaja menyepadukan Stellar dengan JavaScript dan membuat transaksi pertama kami di testnet Stellar. Memandangkan JavaScript diterima pakai secara meluas dalam kalangan pembangun, peralihan kepada rantaian blok dengan Stellar adalah lebih mudah.

Cara terbaik untuk mempelajari apa-apa kemahiran baharu ialah dengan berlatih lebih banyak projek. Bina projek kecil dan bereksperimen dengan konsep.

Jika anda rasa siaran ini membantu, jangan lupa untuk terus menunjukkan kasih sayang kepada saya. Sehingga lain kali suka, kongsi dan pelajari.

Anda juga boleh terus berhubung dengan saya dengan mengikuti saya di sini dan di X, GitHub dan LinkedIn.

Atas ialah kandungan terperinci Mengintegrasikan Stellar dengan JavaScript: Membina dApp adalah Mudah (untuk Pemula Mutlak). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn