Solanaのweb3.jsを使ってNFT送信する方法がわからない

課題

Solanaのweb3.jsで、 spl-token(トークン)を送信するExample はあったが、NFTを送信する方法が見つからない。

回答

NFTもトークンと同等の扱いになるため、上記Exampleのトークンmint addressをNFT mint addressに置き換えるだけで動く。

検証例

実際に、以下の処理でNFTをMintしてから送信してみた。

  1. Arweaveに画像をアップロード
  2. ArweaveにMetadataをアップロード(Metadataの中に上記画像のURLを記述)
  3. SolanaでNFTをMint(Metaplexのactions.mintNFTを利用)
  4. Solanaで上記NFTを誰かに送信 ← この処理は上記Exampleをそのまま利用

実際のコードは mint-and-transfer-nft に設置済み。