我们的mintNFT智能合约函数接收了一个tokenURI参数,这是一个描述NFT元数据的JSON文档 -- 这才是真正给NFT带来生命的东西,可许它有可配置的属性,如名称、描述、图像和其他属性。

星际文件系统(IPFS)是一个去中心化的协议和点对点网络,用于在分布式文件系统中存储和共享数据。

我们将使用Pinata,一个方便的IPFS API和工具包,来存储我们的NFT资产和元数据,以确保我们的NFT是真正去中心化的。

在你创建完账户后:

  • 导航到 Files页面,点击页面左上方的蓝色 Upload 按钮。
  • 上传一张图片到pinata - 这将是你的NFT的图片资产。随意给资产起个你想要的名字
  • 上传后,你会在文件页面的表格中看到文件信息。你还会看到一个CID列。你可以通过点击旁边的复制按钮来复制CID。你可以在以下网址查看你上传的文件:https://gateway.pinata.cloud/ipfs/<CID>
     

现在,我们要再上传一份文件到Pinata。但在这之前,我们需要创建文件!

在根目录下,建立一个名为nft-metadata.json的新文件,并添加以下json代码:

{
  "attributes": [
    {
      "trait_type": "Breed",
      "value": "Maltipoo"
    },
    {
      "trait_type": "Eye color",
      "value": "Mocha"
    }
  ],
  "description": "The world's most adorable and sensitive pup.",
  "image": "ipfs://QmWmvTJmJU3pozR9ZHFmQC2DNDwi2XJtf3QGyYiiagFSWb",
  "name": "Ramses"
}

请自由改变json中的数据。你可以删除或添加到部分属性。最重要的是,确保图像字段指向你的IPFS图像的位置。

一旦你完成了对json文件的编辑,保存它并将其上传到Pinata

Logo

欢迎加入西安开发者社区!我们致力于为西安地区的开发者提供学习、合作和成长的机会。参与我们的活动,与专家分享最新技术趋势,解决挑战,探索创新。加入我们,共同打造技术社区!

更多推荐