小编Rob*_*mas的帖子

如何通过 javascript 代码将元数据 json 上传到 IPFS 以及如何通过前端以编程方式生成此 URL

我已经开始研究如何使用 Solidity 和 IPFS 铸造 NFT。

项目流程为:

  1. 安装IPFS
  2. 通过IPFS上传资产照片并获取其哈希值
  3. metadata.json使用上面的哈希创建一个文件
{
  "name": "NFT",
  "description": "This image shows the true nature of NFT.",
  "image": "https://ipfs.io/ipfs/QmUnMkaEB5FBMDhjPsEtLyHr4ShSAoHUrwqVryCeuMosNr"
}
Run Code Online (Sandbox Code Playgroud)

4:将此json文件上传到IPFS并获取其哈希url

https://ipfs.io/ipfs/QmNSKewexhgY4rYwPoxPgNFN7BSjeiLXJif9q5FjeCrsmg
Run Code Online (Sandbox Code Playgroud)

5:创建solidity具有铸币功能的智能合约。使用 Polygon Mumbai 网络(使用 MATIC 令牌)进行部署。

 // SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;
 
import "https://github.com/0xcert/ethereum-erc721/src/contracts/tokens/nf-token-metadata.sol";
import "https://github.com/0xcert/ethereum-erc721/src/contracts/ownership/ownable.sol";
 
contract newNFT is NFTokenMetadata, Ownable {
  constructor() {
    nftName = "Synth NFT";
    nftSymbol = "SYN";
  }

  function mint(address _to, uint256 _tokenId, string calldata _uri) external onlyOwner {
    super._mint(_to, _tokenId);
    super._setTokenUri(_tokenId, _uri);
  }
}
Run Code Online (Sandbox Code Playgroud)

6:部署智能合约后,NFT …

javascript solidity web3js

6
推荐指数
1
解决办法
7450
查看次数

标签 统计

javascript ×1

solidity ×1

web3js ×1