【Solana】完善 SPL Token 名称和 Logo

  • 0xE
  • 更新于 7小时前
  • 阅读 109

使用 metaplex 来上传代币的名称和 Logo。

本篇文章,我们主要使用 metaplex 来上传代币的名称和 Logo。

创建 SPL Token

根据上篇文章所写的,我们创建一个新的 Token。

➜   spl-token create-token
Creating token AY3xMpzawMJJFepBd8PUKLBX6vDJMQakYTbf5AYq2zkA under program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA

Address:  AY3xMpzawMJJFepBd8PUKLBX6vDJMQakYTbf5AYq2zkA
Decimals:  9

Signature: 5Z2wYXzotC3B9Bq6taEXfGahnX9khq94LDfCJjGh2hYrJAFXCh3W8bx2gMwKF7XFpKZPsE5VXUxVGW6iVMqXURGf

上传代币名称和 Logo

导出私钥

新建项目,并且把私钥放入。

如果使用的是 Solana Playground 则可以在右上角 Wallet 的三个点 Export 私钥。

如果使用的是本地终端,则在 ~/.config/solana/id.json 路径中。

元数据

我们需要一个元数据的 json 文件链接。可以使用 Pinata 进行上传。

首先,把代币的 Logo 图片上传到 Pinata 中,会获得一个 CID: QmYdzQ29LcTvaQEYizfF2EjVbXH4Yxkv3xwPN96ULn5rMM。

拼接上自己的 Gateways 和 ipfs 得到链接:

https://turquoise-immediate-narwhal-125.mypinata.cloud/ipfs/QmYdzQ29LcTvaQEYizfF2EjVbXH4Yxkv3xwPN96ULn5rMM

创建元数据的 json 文件,tokenTest.json

{
    "name": "To Da Moon",
    "symbol": "TDM",
    "description": "A token that will moon as soon as you buy it",
    "image": "https://turquoise-immediate-narwhal-125.mypinata.cloud/ipfs/QmYdzQ29LcTvaQEYizfF2EjVbXH4Yxkv3xwPN96ULn5rMM",
    "attributes": []
}

并且把这个 json 文件也上传到 Pinata 上,得到 uri。

https://turquoise-immediate-narwhal-125.mypinata.cloud/ipfs/QmXdgGXeK3i3esffk5qf1tNC4H2TuiqZPtBeAM7QuxQ5KJ

Solana RPC

使用官方的 RPC 往往会出现网络问题,这里推荐使用 Helius 注册使用,获取自己的 RPC。

编写 js 代码

安装相关依赖:

yarn add @solana/web3.js @metaplex-foundation/mpl-token-metadata @metaplex-foundation/umi @metaplex-foundation/umi-bundle-defaults @metaplex-foundation/umi-web3js-adapters

代码如下:


const {
    createMetadataAccountV3,
    findMetadataPda
} = require("@metaplex-foundation/mpl-token-metadata");
const web3 = require("@solana/web3.js");
const { createSignerFromKeypair, none, signerIdentity } = require("@metaplex-foundation/umi");
const { createUmi } = requir...

剩余50%的内容购买后可查看

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
0xE
0xE
0x59f6...a17e
17年进入币圈,做过FHE,联盟链,现在是智能合约开发者。 刨根问底探链上真相,品味坎坷悟Web3人生。