solana转账交易用javascript 怎么签名

有了web3.js,但是怎么签名一个交易呢,调用哪个函数,签名参数都有哪些啊,求个javascript代码

请先 登录 后评论

最佳答案 2024-03-22 13:19

这个文档有吧 import solanaWeb3 from '@solana/web3.js'; // 设置交易的最近区块hash,用于标识交易的时间 const { blockhash,lastValidBlockHeight } = await connection.getLatestBlockhash("finalized"); console.log("blockhash",blockhash,"bestheight",lastValidBlockHeight)

// 构造指令
let instructions = [solanaWeb3.SystemProgram.transfer({
    fromPubkey: keypair.publicKey,
        toPubkey:  new solanaWeb3.PublicKey("2jczRubmN9Vt4hjqJKWTwkyc8giJ2X1NAZLz5emc"),
        lamports: 100000000
})]
// 构造message对象
const messageV0 = new solanaWeb3.TransactionMessage({
    payerKey: keypair.publicKey,
    recentBlockhash: blockhash,
    instructions: instructions,
}).compileToV0Message();

// 构造交易并且签名
const vtransaction = new solanaWeb3.VersionedTransaction(messageV0)
vtransaction.sign([keypair])
let txhash = await connection.sendTransaction(vtransaction);
console.log("Transaction Signature: ", txhash);
请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 0 收藏,1487 浏览
  • 月亮也有光 提出于 2024-03-14 21:29