Giao dịch Solana cơ bản nhất: chuyển SOL từ tài khoản này sang tài khoản khác. Đây là bài kiểm tra đầu tiên để xác minh rằng cài đặt LiteSVM của bạn hoạt động tốt trước khi kiểm tra các logic chương trình phức tạp hơn.
Ví dụ Đầy Đủ
import { createClient, generateKeyPairSigner, lamports } from "@solana/kit";import { litesvm } from "@solana/kit-plugin-litesvm";import { signer } from "@solana/kit-plugin-signer";import { systemProgram } from "@solana-program/system";// Payer first, then the LiteSVM transport, then program plugins.const mySigner = await generateKeyPairSigner();const client = createClient().use(signer(mySigner)).use(litesvm()).use(systemProgram());const recipient = await generateKeyPairSigner();// Airdrop SOL to the payerclient.svm.airdrop(client.payer.address, lamports(10_000_000_000n));// Check initial balanceconst senderInitial = client.svm.getBalance(client.payer.address) ?? 0n;console.log("Sender initial:", Number(senderInitial) / 1e9, "SOL");// Build and send the transferawait client.system.instructions.transferSol({source: client.payer,destination: recipient.address,amount: lamports(1_000_000_000n) // 1 SOL}).sendTransaction();// Check final balancesconst senderFinal = client.svm.getBalance(client.payer.address) ?? 0n;const recipientFinal = client.svm.getBalance(recipient.address) ?? 0n;console.log("Sender final:", Number(senderFinal) / 1e9, "SOL");console.log("Recipient final:", Number(recipientFinal) / 1e9, "SOL");
Kết Quả Mong Đợi
Sender initial: 10 SOLSender final: 8.999995 SOLRecipient final: 1 SOL
Số dư cuối cùng của người gửi thấp hơn 9 SOL một chút do phí giao dịch (5.000 lamport mỗi chữ ký).
Phần này đề cập đến loại giao dịch đơn giản nhất. Để kiểm tra với các chương trình tùy chỉnh, xem Kiểm Tra Chương Trình. Để kiểm tra chuyển token (mint, ATA), xem Kiểm Tra Token.
Is this page helpful?