首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用IPFS存储与ERC-1155和id替换

使用IPFS存储与ERC-1155和id替换
EN

Ethereum用户
提问于 2021-07-04 11:47:34
回答 1查看 384关注 0票数 1

有办法在ERC-1155中用{id}替代IPFS存储吗?我希望托管ipfs上的元数据,并让uri函数返回到它的链接。一个有用的例子会很有帮助。谢谢!

EN

回答 1

Ethereum用户

发布于 2022-10-11 07:16:55

虽然我不确定您正在构建什么特性,但是如果我们讨论的是IPFS上上传的NFT的id替换,您可以按照以下步骤操作:

注意:皮纳塔用作IPFS的存储。

  1. 将NFT添加到文件夹中,并将该文件夹上载到IPFS存储中。上传文件夹后,您将得到一个类似于QMsereiono8932ebhbfdflnelwfne的CID。您可以使用以下URL查看图像。例如,我已经上传了1.png,我将能够使用以下内容来检查它:https://ipfs.io/ipfs/QMsereiono8932ebhbfdflnelwfne/1.png
  2. 为所有上传的NFT创建元数据,并在图像键中添加它们的URL。元数据应该有名称、图像、描述和属性键。这里是一个示例元数据。确保元数据文件的名称应该是一个整数,如1.json、2.json等{“属性”:{“特质”特质“颜色”,“值”:“红色”}、“描述”:“示例描述”、“图像”:"https://ipfs.io/ipfs/QMsereiono8932ebhbfdflnelwfne/1.png““、”名称“:"external_url":"https://ethereum.stackexchange.com/”}
  3. 将元数据添加到文件夹中,并将该文件夹上载到IPFS存储中。上传文件夹后,您将得到一个类似于Qiuewrbiw3223nncewocnnciuenw的CID。您可以使用以下URL查看元数据。例如,我已经上传了1.json,我将能够使用以下内容来检查它:https://ipfs.io/ipfs/Qiuewrbiw3223nncewocnnciuenw/1.json
  4. 在Opensea通过调用该方法读取元数据时,重写ERC1155契约的URI方法。您需要从openzeppelin导入以下字符串实用程序函数。导入"@openzeppelin/contracts/utils/Strings.sol";函数uri(uint256 _tokenId)覆盖公共纯返回(字符串内存){返回字符串(abi.encodePacked( "https://ipfs.io/ipfs/Qiuewrbiw3223nncewocnnciuenw/“,Strings.toString(_tokenId),“.json”))};

就这样。现在,您将能够看到您在Opensea上创建的NFT。希望这能有所帮助。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/102956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档