热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

教程丨三分钟教你制作专属NFT智能合约

本文编译自AmirSoleymani在NFT领域成为艺术家,其中一个方面是在区块链上拥有自己的出处,没有什么比拥有自己的智能合约更能证明这一点。通过拥有

本文编译自Amir Soleymani

在NFT领域成为艺术家,其中一个方面是在区块链上拥有自己的出处,没有什么比拥有自己的智能合约更能证明这一点。

通过拥有自己的智能合约,你将能够在一个收藏品系列中以自己的名义下铸造作品。

当然,当你计划在Opensea这样的开放市场上出售你的物品,你将无法在任何其他平台上出售你的智能合约中的作品。

拥有自己的智能合约和铸币的工作并不是一个容易的过程,首先你必须对区块链领域的技术和相关术语有基本的了解。

这个过程包括:

  • 编写一个智能合约,你可以在区块链上铸造无形的代币(独特的作品)

  • 将该智能合约部署在区块链上

  • 在etherscan上验证源代码

  • 创建元数据文件并将其与实际的图片(可以是图像、视频,甚至是Javascript/HTML代码)一起上传到IPFS。

  • 通过连接代币、元数据和艺术品,将它们绑定到区块链上,并在区块链上铸造作品。

对此,我编写了一个简单的智能合约,允许你铸造无限的独特作品,每个作品都有自己的元数据(tokenURI)。你也可以销毁代币,仍然能够控制智能合约的所有其他标准功能。

可以在此处查看合约源代码:

mondoir / NFT-Smart-Contract

在此源代码中,你需要更改3个部分来对其进行自定义:

第1358行 #YOURCONTRACTNAME#(你的合约名称)

无论你的合约/收藏是什么。例如,MondoirPhotographyCollection。注意,这不能有任何空格。

第1370行 #YOUR CONTRACT NAME# & #SYMBOL#

名称相同,但在这里你可以使用空格,例如:Mondoir Photography Collection。符号是代币名称。这可能有点令人困惑,但它基本上是类似ETH和BTC的东西。因此,请随意使用你的收藏品名称的某些部分,例如:MPC(代表Mondoir Photography Collection)。

这就是定制你的合约。

你现在需要到Remix去部署你的合约。Remix IDE是一个开源的 Web 和桌面应用程序。它促进了快速开发周期,并拥有丰富的插件和直观的GUI。

Remix - 以太坊 IDE

参考A1

在Remix网页的左侧,有一个文件浏览器。

点击Single Sheet(编号1),创建一个新文件。将此文件命名为你的智能合约名称,以.sol结尾。所以你的文件名应该是这样的:myContract.sol

然后复制我github页面上的合约源代码的内容,并将其粘贴到你刚刚创建的文件中。

你可以在此处更新我之前提到的那3项内容。(第1358行和1370行),并且不要忘记删除 # 符号。

下一站,转到第2项(参考A1图片)来编译你的合约。确保你的屏幕和选项和上图看起来相同,然后按编译(Compile)。

如果你选择了自动编译(Auto Compile),它可能已经编译了你的合约,但再次编译也无妨。

一旦完成,进入菜单3,将合约部署到以太坊网络上。

现在,根据你的需要,你可能想把它部署到testnet上测试你的合约,在这种情况下,你可以使用这个列表中的虚拟机(VM)。

如果你想使用末的元掩码并在主网或测试网上部署,请使用Web3提供程序并连接你的元掩码。

确保在合约部分选择了正确的合约,然后按部署(Deploy)。

部署成功后,你应该看到“部署(Deploy)”按钮下面的合约名称和地址。

通过单击合约名称和地址前面的2个堆叠文件复制合约地址,然后转到etherscan以验证你的合约。

根据你的网络,如果你选择在主网部署,你可以到https://etherscan.io/‌,如果在测试网,可以到https://rinkeby.etherscan.io/ 或 https://ropsten.etherscan.io/。

在Etherscan上,将你的合约地址粘贴到搜索栏上,然后进入你新创建的合约。

进入“合约”标签,然后点击验证和发布链接。

根据Remix选择编译器类型、版本和许可证类型。

最后,回到Remix并复制合约源代码。

根据上图,粘贴合约源代码并选择优化选项“是”。

重要提示:

在这个阶段,你可能会收到错误信息。我在Chrome浏览器上遇到了这个问题。如果你遇到这个问题,可以尝试使用Safari浏览器。

在点击验证和发布后,Etherscan应该读取你的合约源代码,找出这个合约的ABI并验证它。

验证您的合同后,你将能够在合约标签上用新增加的读写按钮与它进行交互。在写入部分,你将能够铸造新的作品。

实际铸造工作

为了铸造,你需要创建元数据json文件,并将其与图像/视频/html 文件一起上传到IPFS。此前我曾解释过这个话题:

在Opensea上的Mint HTML

一旦你的文件在IPFS上,可以获取你的metadata.json文件的链接,然后转到ethersan和你的合约页面。

在那里写入,然后是mint(铸造)。

在这里,你可以选择要将这个新创作的作品发送到哪个地址。很明显,这将是你自己的地址。然后你可以为这个作品选择一个代币ID。这是一个数字,只要它没有在你的智能合约中使用过,就完全由你来决定。为你的作品想出一个编号系统是一个很好的做法。

例如,静止图像以0001开头,然后将下一个作品添加到索引(index)中。

然后在tokenURI上,将链接粘贴到工作的metadata.json文件,并按mint。确保你的metamask已连接,并且你有足够的ETH支付gas费。一旦完成,新铸造的作品将在你的opensea帐户上可用,你可以自由选择如何出售。

这个智能合约允许你铸造无限数量的独特作品,每个作品都有自己的代币ID和tokenURI。

点击下方卡片

关注巴比特资讯

关注DeFi之道

巴比特资讯,探索区块链边界

三生万物,我们经由DAO之路,去探索DeFi之道

区块链学习第一站


推荐阅读
author-avatar
北若久
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有