使用 metaplex 来上传代币的名称和 Logo。
本篇文章,我们主要使用 metaplex 来上传代币的名称和 Logo。
根据上篇文章所写的,我们创建一个新的 Token。
➜ spl-token create-token
Creating token AY3xMpzawMJJFepBd8PUKLBX6vDJMQakYTbf5AYq2zkA under program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
Address: AY3xMpzawMJJFepBd8PUKLBX6vDJMQakYTbf5AYq2zkA
Decimals: 9
Signature: 5Z2wYXzotC3B9Bq6taEXfGahnX9khq94LDfCJjGh2hYrJAFXCh3W8bx2gMwKF7XFpKZPsE5VXUxVGW6iVMqXURGf
新建项目,并且把私钥放入。
如果使用的是 Solana Playground 则可以在右上角 Wallet
的三个点 Export
私钥。
如果使用的是本地终端,则在 ~/.config/solana/id.json
路径中。
我们需要一个元数据的 json 文件链接。可以使用 Pinata 进行上传。
首先,把代币的 Logo 图片上传到 Pinata 中,会获得一个 CID: QmYdzQ29LcTvaQEYizfF2EjVbXH4Yxkv3xwPN96ULn5rMM。
拼接上自己的 Gateways 和 ipfs 得到链接:
创建元数据的 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。
使用官方的 RPC 往往会出现网络问题,这里推荐使用 Helius 注册使用,获取自己的 RPC。
安装相关依赖:
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...
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!