Stellar 是一個用於快速跨國金融交易的開源區塊鏈網路。如果您是 JavaScript 開發人員,並且想在一流的網路上建立 dApp,那麼這就是您的最佳選擇。在本教程中,我們將學習如何將 Stellar 與 JavaScript 集成,從設定環境到進行第一筆交易。
那麼,讓我們開始吧。
哦,在開始之前,我們需要 JavaScript 的基本知識,並在您的電腦上安裝 npm 和 Node.js。
首先,開啟終端機或命令提示字元並為專案建立新目錄:
mkdir stellar-js cd stellar-js npm init -y
此指令將初始化一個新的 Node.js 專案。
現在,安裝 Stellar SDK for JavaScript。
npm install stellar-sdk
但是,等等什麼是Stellar-SDK?
Stellar SDK 是一個功能強大的函式庫,可以使用 JavaScript 與 Stellar 網路進行互動。
現在環境已經搭建完畢,我們將連接Stellar網路。我們需要 Stellar SDK 並連接到測試網。
什麼是測試網?
Testnet 是一個免費使用的網絡,供開發人員測試其應用程式而無需連接真實貨幣。哪裡有一個連接真實貨幣的主網,需要XLM來支付交易費用等。測試網與主網類似,它有免費的測試Lumens(XLM),稱為Friendbot。
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 發送請求,在您的帳戶中存入 10k 測試流明。因此,根據交易的狀態,它將記錄訊息。
現在,您的帳戶已創建,您可以在恆星網路上進行第一筆交易。我們將建造、簽署交易並將其提交到恆星網路。我們將從我們的帳戶發送 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中文網其他相關文章!