接下来,我们将学习如何构造该元数据,以便OpenSea可以选择它。 部署你的合约要部署Creature合约,只需要核实存储库,获取免费的Alchemy API密钥,然后使用Truffle进行部署: yarn installexport ALCHEMY_KEY=""export MNEMONIC=""export NETWORK="rinkeby"truffle deploy --network rinkeby如果你已经在使用Infura API ,则还可以使用INFURA_KEY环境变量代替ALCHEMY_KEY。 “小建议:你只需在shell会话中运行上述导出行一次。我们建议你将这些行放入.env文件中,一旦使用. .env就应用它,并避免在提交你的代码时检入它。这里有一个示例.env文件。”请注意,为了使用Truffle和Infura进行部署,你将需要一个来自MetaMask账户的“助记词短语”,为了让ETH进入你的Rinkeby MetaMask账户,你可以使用Rinkeby ETH水龙头,而要从Metamask中获取“助记词短语”,请单击“设置”并单击“显示助记词短语”,注意,请确保自己采用的是没有主网资产的钱包账户! 铸造你的代币接下来,我们需要为新部署的ERC721合约铸造新的资产,我们会将这些资产放入我们控制的帐户中,以便我们可以测试商品的OpenSea拍卖流程。 部署到Rinkeby测试网络后,Rinkeby上将有一个合约,该合约将在Rinkeby Etherscan上可见。你可以在Deployment命令的输出中找到已部署合约的地址,并通过以下URL在Etherscan上找到它: https://rinkeby.etherscan.io/address/ 。例如,这是最近部署的一个合约。运行铸造脚本时,应将此合约地址和MetaMask帐户的地址设置为环境变量: export OWNER_ADDRESS=""export NFT_CONTRACT_ADDRESS=""node scripts/mint.js至此,我们已经在Rinkeby网络上部署了一个智能合约,并在合约中铸造了一些新的OpenSea创作品,你应该可以访问rinkeby.opensea.io,并在钱包中以NFT的形式查看你的商品。有关更多的信息,请参见第3节。 这些creatures的默认元数据由https://opensea-creatures-api.herokuapp.com/api/creature/{token_id}提供,你可以在此处进行设置。接下来,你需要创建自定义元数据API。 二、添加元数据 一旦你部署了自己的合约,你就需要一种方法让每个单独的NFT商品在OpenSea(以及其他支持NFT代币的网站)上正确显示。这就是链外元数据的作用! ERC721合约中的每个代币标识符都将具有相应的元数据URI,该URI返回有关该商品的其他重要信息,例如名称、图像、描述等。要查找此URI,我们使用ERC721中的tokenURI方法和ERC1155中的URI方法。此元数据的一个简单示例是: {"name": "Herbie Starbelly","description": "Friendly OpenSea Creature that enjoys long swims in the ocean.","image": "https://storage.googleapis.com/opensea-prod.appspot.com/creature/50.png","attributes": [...]}你可以用元数据做很多事情——包括添加排名、提升、动画、日期等等!我们认为你肯定会想全面地了解它,所以请参阅我们为本教程提供的专用元数据标准文档。 (责任编辑:admin) |