面向初学者的 NFT 编程,NFT平台开发丨NFT交易平台开发

不可替代代币(通常称为 NFT)的世界已经流行起来。事实上,NFT 行业允许艺术家从他们的数字艺术中赚取数千万美元。NFT 的出现现在获得了如此巨大的估值,以至于艺术、金融和加密社区的数字创作者开始意识到 NFT 的转型影响。因此,学习 NFT 开发是提升 Web3 职业生涯的好方法。但是,如果您是 NFT 领域的初学者,您可能想知道如何开始 NFT 开发。因此,我们将在本文中向您展示必要的步骤,并为初学者教您 NFT 编程。

作为初学者,您可能还想知道NFT是什么?NFT 是不可替代的数字资产,代表各种区块链上的独特项目。但是,本文的目的并不是详细解释 NFT 是什么。不过,如果您想在进一步阅读本教程之前阅读该主题,请查看 Moralis 博客中的以下文章以获取更多信息:“不可替代代币解释 – 什么是 NFT?”。

相反,如果您是一名希望开始使用区块链和 NFT 开发的程序员,那么您来对地方了。在这里,您将获得有关如何编程或开发 NFT 并使用 Moralis 等无障碍中间件平台部署它的基本概述。

终极 NFT 编程课程

那么,我们为什么要在这个面向初学者的终极 NFT 编程课程中使用 Moralis?原因很简单。Moralis 是一个功能强大的平台,可提供无缝托管和一整套产品来帮助您进行 NFT 编程。这包括一个强大的深度索引NFT API,可用于创建 NFT 或 NFT 平台。此外,Moralis 还可以帮助您管理您的 NFT。除了使用 Moralis 及其下一代 Web3 服务来帮助加速您的项目之外,您还将获得有关在 NFT 开发过程中使用哪些开源工具的提示。

更高级、精通区块链的开发人员会发现这篇文章有助于快速介绍如何创建自己的 NFT。如果您更喜欢详细的视频教程,了解如何立即开始 NFT 开发:

对于那些仍在学习编程语言和构建他们的堆栈的人,您将通过在概念层面上学习 NFT 开发来从本指南中受益。在您完全沉浸于 NFT 编程之前,它将让您了解此类项目的需求。

如何开始 NFT 编程

鉴于当今对 NFT 和 NFT 平台的需求,它们激起了想要在这个令人兴奋且利润丰厚的区块链领域入门的开发人员的兴趣也就不足为奇了。

人们认为 NFT 编程既复杂又困难。虽然它确实有某些先决条件,但它并不像听起来那样令人生畏。最近,开源工具使这变得更容易了,这些工具允许您导入可靠的智能合约,而不必从头开始构建您的 NFT 项目。一旦您掌握了所需的技能和知识并熟悉了使您的构建更容易的工具,您会发现 NFT 开发可以非常简单、轻松和有趣!

NFT 编程的先决条件

首先,您需要熟悉区块链、智能合约Web3、DeFi、dApps的概念以及这些生态系统的工作原理。您还需要对以太坊等去中心化网络有透彻的了解。理想情况下,您应该已经探索过在以太坊上构建的各种方法,例如编程 dApp创建 ERC-20 代币。此外,您应该已经了解 JavaScript 和 Solidity 等编程语言。

JavaScript和 Solidity 以及JSON等格式对于创建智能合约和与区块链交互非常重要。它们对于了解各种 Web3 工具和中间件平台(如Moralis )的作用也是必要的,它们将帮助您优化构建。

要获得有关 JavaScript 及其与区块链的关系的坚实基础,请查看 Ivan 在 Tech Academy 上的以下课程:“面向区块链开发人员的 JavaScript 编程课程”。这是对该主题的精彩介绍,为您提供了 JavaScript 在区块链和 NFT 开发中重要性的独特视角。您的编程技能集的另一个必备技能Solidity被称为“智能合约语言”。Solidity 专为创建以太坊和智能合约而构建。您可以通过 Ivan 在 Tech Academy 的介绍以太坊智能合约编程的入门课程中了解更多信息。

如果你勾选了所有这些框,你就可以继续下一步了,这就是 NFT 开发的实际过程。

NFT 开发 – 简化指南

虽然我们可能不会涵盖 NFT 编程或 NFT 开发的所有复杂性,但本指南将向您介绍该过程的一般步骤以及您可以在此过程中使用的工具,以帮助使其更简单。

NFT 编程步骤

本指南的组织方式为您提供 NFT 编程或 NFT 开发中重要步骤的概述。NFT编程的基本步骤是:

NFT 本身的创建,其中涉及构建智能合约。添加元数据并为元数据查找主机。在市场上列出您的 NFT。 管理你的 NFT。

请注意:在本文中,我们将重点关注前两个步骤,即通过构建基于 ERC-1155 标准的智能合约和为元数据找到主机来创建 NFT。但是,由于步骤 3 和 4 也很重要,您可以参考前面提到的 NFT 编程视频以更详细地了解它们。

NFT 编程第 1 步:创建 NFT

我们即将创建一个 ERC-1155 代币。请注意,有两种 NFT 或不可替代的代币标准:ERC-721 和 ERC-1155。ERC-1155 比 ERC-721 更新且具有更多功能。

使用创建不可替代代币的最新标准 ERC-1155 具有某些优势,包括:

更大的灵活性。能够在同一个合约中创建和使用可替代和不可替代的代币。进行批量传输。更有效地设置和管理参数。

建立智能合约

要创建智能合约,请访问 Remix (http://remix.ethereum.org)。Remix 可让您访问众多库,从而更轻松地构建智能合约。这些库作为可用于 NFT 开发的可靠且经过测试的智能合约的来源非常有用。

创建一个新文件

在您的 Remix 工作区中创建一个新文件。为此,我们将其命名为“Opensea_nft”,但您可以自由选择任何您喜欢的名称。

重要的是要重申,在继续进行之前您必须了解 Solidity。如果您仍在学习 Solidity 的基本原理,请查看 Moralis 的 Youtube 频道,了解更多教育工具和出色的Solidity 教程。

首先输入“pragma solidity ^0.8.0”。这是用于此目的的编译器版本。接下来,从 OpenZeppelin 导入 ERC-1155 代币合约。OpenZeppelin 令人惊叹的代币合约库和其他有用的合约为您提供了经过充分测试且可靠的智能合约,您可以轻松地使用这些合约在您的构建中执行常见功能。

在 OpenZeppelin 中查找 ERC-1155 智能合约

在这里,您可以看到 ERC-1155 合约的 OpenZeppelin GitHub 页面:

ERC-1155 标准提供了 NFT 所需的所有功能,包括跟踪余额所需的映射功能和检查余额的功能。它还提供了进行转账、铸造新的 NFT(包括批量铸造)和销毁 NFT 的功能。并非所有可用功能都将在此项目中实现。我们只会选择最相关的。

从智能合约创建 NFT

将原始合约导入 Remix 上新创建的智能合约。为此,您只需导入 GitHub 链接。

继续定义新的智能合约。为新合约命名(为此,我们称其为“NFTContract”)。在此之后,您可以“继承”原始 ERC-1155 合约。Solidity 中的继承仅仅意味着您从该合约中获取功能。

继承合约后,就可以开始基于父ERC-1155合约实现自己的NFT了。

实现你自己的 NFT

您可以在此处指定合同特有的项目。例如,您可以命名您的 NFT 项目并指定要铸造的代币数量。您还将提供元数据并指明谁可以调用您合约中的函数。

添加限制

要使铸币功能专属于所有者,您需要使用 OpenZeppelin 上提供的“Ownable”智能合约。转到 OpenZeppelin 站点并单击“Contracts”,然后单击“Access”,然后单击“Ownable.sol”。将此文件导入您的合同。

将铸币功能设置为“onlyOwner”。通过确保调用者与所有者相同,这保证了铸币对首次部署合约的地址是专有的。添加“要求”语句。所有这一切都是为了确保合约保存了所有者的地址并实现了一个修饰符——在函数运行之前运行的一段代码。

您的智能合约应如下所示:

燃烧代币

有些人可能希望能够烧毁自己的 NFT。您需要做的就是添加“刻录”功能和参数。“销毁”功能确保账户余额大于您销毁的金额。对于其他参数,您可以选择添加上述限制。燃烧函数仅由合约所有者调用是有道理的。因此,您还可以在代码中添加“require”函数。

在虚拟机上部署

该合约现在已准备好在虚拟机上部署。要测试智能合约,请单击 Remix 左侧菜单上的以太坊图标。确保选择 NFT 合约。点击“部署”。

单击“部署”后,您将能够查看实例。该实例列出了该合约中可以调用的所有函数。之后,尝试调用一些函数,看看它们是否有效。

代币余额

您可以从检查您的代币余额开始。在文件名“Artwork”下,可以粘贴账号ID并创建token ID(本例暂称为“0”),点击“调用”。您将能够立即看到您的余额。

测试薄荷功能

您只需单击实例上的“铸币”功能并输入您的地址、代币 ID 和要铸币的数量即可铸币。点击“交易”。

如果您再次检查您的代币余额,您会发现这些新铸造的代币已添加到您的总数中。您可以对每个新的令牌 ID 重复该过程。

NFT 编程第 2 步:添加元数据并查找主机

对于下一步,您需要了解每个 NFT 的元数据结构。要获得概览,请访问 OpenSea 网站,然后搜索它们显示元数据标准的位置。

基本结构,写成两个花括号之间的 JSON 字符串,应至少包括以下内容:

描述。外部 URL:指向您可以查看 NFT 的位置。图片:图片本身的链接。姓名。属性。

创建 JSON 文件

在 Remix 编辑器中打开一个新文件夹。它应该是与 Moralis 兼容的“index.html”文件。保存文件。创建一个 JSON 文件;对于这个例子,我们可以写“0.json”作为初步名称,并在该文件中包含实际属性(图像、描述、名称等)。它应该看起来像 OpenSea 中的示例。

为 NFT 创建 JSON 字符串后,您需要将它们托管在某个地方。它不能在智能合约内或区块链本身上。需要有一个指向 JSON 文件的外部链接,然后将其放入智能合约中。这就是莫拉利斯的用武之地。

在 Moralis 上托管 JSON 文件

获取托管目录的 URL。为此,您需要来自 Moralis 服务器的各种 CLI。要继续,您需要有一个 Moralis 帐户。如果您还没有注册,请不要担心。只需访问Moralis 的官方网站。快速、简单且免费注册!

设置 Moralis 帐户后,单击右上角的“+ 创建新服务器”按钮创建新服务器。创建服务器后,单击“查看详细信息”以检索 CLI API 密钥和 CLI API 密钥。这些是您稍后需要在 Remix 中输入的详细信息。

在 Remix 上,打开菜单栏上的“终端”并查看“终端”。在它上面,输入运行“npm install -g -moralis -admin -cli”。当您部署它时,它会询问您的 CLI API 密钥,稍后会询问您的 CLI API 密钥。将来自 Moralis 服务器的信息输入到“终端”。

现在可以部署了。如果一切正常,您应该阅读“部署成功!”。

复制此文件的 URL 并在浏览器上访问该 URL。现在获取您希望嵌入 NFT 的艺术品的 URL,并将其作为“图像”粘贴到您的 JSON 字符串中。

您还可以选择添加外部 URL(例如艺术家的专业网站),以便为您的艺术品或图像添加适当的归属。如果您希望在部署初始文件后添加属性,您可以根据需要编辑文件并重新部署。

对于其他图像,您可以根据需要多次重复此过程。

注意 ERC-1155 标准

现在您已经知道如何创建 JSON NFT 文件并将其托管在 Moralis 上,是时候微调您的 NFT 开发了。

ERC-1155 标准,如元数据选择下的实际 EIP 中所示,具有 JSON ERC-1155 字符串的特定格式。您需要检查字符串格式下指示的 ERC-1155 标准的规范:它需要 64 个没有 0x 前缀的十六进制字符。因此,您需要修改原始文件名并根据需要将其填充到 64 位。

重新命名文件

在这种情况下,由于 NFT ID 只是“0”,因此您只需再添加 63 个 0 即可得到 64。这很重要,因为每个查询 ERC-1155 的人都将根据此特定模式进行查询。

按照公认标准重命名文件后,您可以保存它并再次将其发布到 Moralis 服务器。

部署智能合约

现在您的文件已经托管在网站上,您可以继续部署您的智能合约。

获取基本 URL

复制从 Moralis 获得的 URL 并将其粘贴到 ERC-1155 合约的构造函数下。要转到实际的 NFT JSON 文件,请添加“/{ID}.json”。

上述过程是我们提供 ERC-1155 合约的 URL 的方式。

NFT 元数据和市场

OpenSea 等市场与托管的 NFT 元数据有效交互。适当的格式将允许此类市场通过仅定义一次 URI 将相同的链上字符串用于大量代币。

本质上,您指的是区块链中的相同空间。URI 只提供一次,客户端可以将“{ID}”替换为任何十六进制形式的令牌 ID。

在测试网上部署

您的 NFT 智能合约现在已准备好在测试网上部署以查看它是否有效。这涉及通过 Rinkeby 的网站等网站从水龙头获取测试网令牌。您应该已经熟悉从此类水龙头获取 Ether,以及在 Remix 上使用它们进行部署和测试。对于此过程,您还需要一个MetaMask帐户。

转到 Remix 并单击“部署”选项卡下的“注入的 Web3”。连接您的 MetaMask 帐户并确保您已选择“Rinkeby (4) 网络”。点击“部署”。

转到http://ropsten.etherscan.io。粘贴交易哈希。你应该可以在那里找到你的 NFT。一切完成后,您可以在市场的测试网上启动您的 NFT。只需转到 OpenSea 并选择 testnet 选项。

当它在测试网上完美运行时,你可以将它部署在主网上。只需从您的 MetaMask 帐户中选择“主网”。当您返回 OpenSea 时,请选择主网。

Moralis 让 NFT 编程变得更容易

Beeple 开创性的 NFT 艺术品“Everydays: The First 5000 Days”(部分图片)。图片来源:佳士得

如您所见,Moralis 通过为您的 NFT 元数据提供托管来帮助简化 NFT 编程过程,因此您可以在几个小时内托管、测试和部署您的 NFT。

在本文中,我们仅涉及 NFT 编程的基本部分。但是,要获取有关如何创建、启动、列出和管理 NFT 的完整详细信息,请务必查看本文开头提到的出色的 Moralis NFT 视频教程。重要的是要注意,除了成为您创建 NFT 之旅的一部分之外,Moralis 还拥有管理您未来 NFT 的工具。

NFTmallSuperFarm等 DeFi NFT 平台已经集成了 Moralis 的 API,NFTmall 称其为“Web3 后端开发的瑞士军刀”。随着如此庞大的项目发现 Moralis 的便利性和可靠性,是时候更多地探索 NFT。

    THE END
    喜欢就支持一下吧
    点赞15 分享
    评论 抢沙发
    头像
    欢迎您留下宝贵的见解!
    提交
    头像

    昵称

    取消
    昵称表情代码图片

      暂无评论内容