首页 > 解决方案 > solana transfer nft to any address web3js

问题描述

I want to make a transfer from my wallet to another wallet with a code, I use web3js, how do I do this, I made a solana transfer, but I don't know how to make an nft transfer, I will be grateful if you help Translated in the translator sorry))

标签: solana

解决方案


NFT 转账与普通的 spl-token 转账相同。在转移 NFT 之前,您需要知道它的 Token Mint 地址或您的关联 Token 账户。还需要知道 NFT Mint Token Account 的接收方的 Associated Token Account。如果接收者没有关联的令牌帐户,您或他需要先创建它。如果您对账户类型不熟悉,请阅读我在 medium 上的文章。 https://medium.com/@blockchainlover2019/how-to-verify-ownership-of-metaplex-nft-programmatically-at-on-chain-1059418c3c6

使用 web3 转移代币很容易,不需要技术知识。这是我来自 Solana 程序(智能合约)的代码,它将 nft 从一个转移到另一个。

    let transfer_ix = spl_token::instruction::transfer(
        token_program.key,
        nft_account_to_send.key,
        nft_account_to_receive.key,
        &pda,
        &[],
        1
    )?;
    invoke_signed(
        &transfer_ix,
        &[
            nft_account_to_send.clone(),
            nft_account_to_receive.clone(),
            pda_account.clone(),
            token_program.clone(),
        ],
        &[&[&b"nft_transfer_is_easy"[..], &[_nonce]]]
    )?;

我将为您添加另一个代码,它在 web3 上运行。


推荐阅读