Mint NFT 在Opensea显示

今天教大家如何Mint NFT在Opensea上显示出来。

首先先写一个标准的ERC721合约。然后继承ERC721URIStorage。代码如下:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/access/Ownable.sol";

contract MyToken is ERC721, ERC721URIStorage, Ownable {
    constructor() ERC721("MyToken", "MTK") {}

    function safeMint(address to, uint256 tokenId, string memory uri)
        public
        onlyOwner
    {
        _safeMint(to, tokenId);
        _setTokenURI(tokenId, uri);
    }

    // The following functions are overrides required by Solidity.

    function _burn(uint256 tokenId) internal override(ERC721, ERC721URIStorage) {
        super._burn(tokenId);
    }

    function tokenURI(uint256 tokenId)
        public
        view
        override(ERC721, ERC721URIStorage)
        returns (string memory)
    {
        return super.tokenURI(tokenId);
    }
}

部署合约后,调用safeMint函数就可以创建NFT了。

需要注意的是要想在Opensea上显示你的NFT,uri你需要按照Opensea的元数据来设置。

下面是Opensea的官方文档:https://docs.opensea.io/docs/metadata-standardsicon-default.png?t=M1L8https://docs.opensea.io/docs/metadata-standards

 这样就可以在Opensea显示你制作的NFT了。

这是我做的一个Demo:

http://106.52.21.244:8085/icon-default.png?t=M1L8http://106.52.21.244:8085/

如有问题联系QQ253319066 

你可能感兴趣的:(数字货币,区块链,区块链,智能合约,NFT,Opensea,solidity)