Cointime

扫码下载App
iOS & Android

如何在 Polygon Mumbai 测试网上部署一个动态 NFT ?

项目方

作者:Chainlink. 编译:Cointime.com QDD

概况

难度级别:初级/中级

预计完成时间:60分钟

在本教程中,你将学习如何使用Remix在Polygon Mumbai测试网上部署智能合约。该智能合约创建了一个NFT,根据以美元计价的ETH价格动态更新。

下面,你将看到如何逐步进行的说明:

1. 创建一个MetaMask钱包

2. 在Polygon Mumbai测试网上获取资金

3. 创建Chainlink VRF订阅

4. 使用Remix部署动态NFT(dNFT)智能合约

5. 将dNFT智能合约添加为VRF消费者

6. 使用Chainlink Automation自动化NFT

7. 在OpenSea上查看NFT并与之交互

第一步:创建一个MetaMask钱包

注:如果你已经有一个MetaMask钱包(或任何其他钱包),请跳过这一步。

要创建MetaMask钱包,请访问https://metamask.io/,并按照说明创建你的钱包。

第二步:获取Polygon Mumbai Testnet资金

A) 进入 https://faucets.chain.link/mumbai

B) 点击右上角的 "连接钱包"。

C) 如果这是你第一次与Polygon Mumbai互动,请在MetaMask提示 "允许本网站添加网络?"时点击 "批准"。

D) 点击 "切换网络"。

E) 勾选 "我是人类 "复选框并完成验证码。

F) 点击 "发送请求"。

G) 等待交易完成。

恭喜你!你已成功申请并收到testnet Polygon Mumbai MATIC和testnet LINK。

注意:如果Chainlink水龙头的testnet MATIC已经用完,请使用Polygon Mumbai水龙头接收testnet MATIC。你仍需使用Chainlink水龙头接收测试网LINK。

步骤 3:创建 VRF 订阅

在部署dNFT智能合约之前,我们将首先创建一个VRF订阅。将其视为合约生成随机数时使用的资金桶。我们需要订阅ID来部署智能合约。

A) 转到 https://vrf.chain.link/mumbai

B) 点击右上角的 "连接钱包"。

C) 点击 "创建订阅"。

D) 再次点击 "创建订阅"。

E) 出现MetaMask提示。点击 "签署"。

F) 在MetaMask中点击 "确认",等待交易确认。

G) 一旦交易被确认,订阅被创建,点击 "添加资金"。

H) 在 "添加资金(LINK)"输入框中,添加2个LINK,然后点击 "添加资金"。

I) 在MetaMask中确认交易。

恭喜你!你已经成功创建了你的VRF订阅,并通过一些testnet LINK进行了注资。我们将在下一步讨论VRF订阅。

步骤4:在Remix上部署动态NFT智能合约

Remix是一个在线集成开发环境(IDE),专门用于开发和测试以太坊区块链上的智能合约。它为以太坊智能合约的编写、编译、部署和调试提供了友好的用户界面和一套强大的工具。

在本步骤中,你将学习如何创建一个新的Remix工作区并部署一个智能合约。别担心:智能合约已经编写完成,你只需复制粘贴即可。

A) 转到 https://remix.ethereum.org/

B) 点击屏幕左上角的 "+"图标,创建一个新的工作区。

C) 输入新工作区的名称,然后点击 "确定"。

D) 右键单击左侧边栏中的 "合同",然后单击 "新建文件"。

E) 将文件命名为 "demo.sol "或任何其他你喜欢的名称,然后点击回车。

F) 复制此代码。

// SPDX-License-Identifier: MIT

// This is for DEMO purposes only and should not be used in production!

pragma solidity ^0.8.10;

// Importing other contracts

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

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

import "@openzeppelin/contracts/utils/Strings.sol";

import "@openzeppelin/contracts/utils/Base64.sol";

import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";

import "@chainlink/contracts/src/v0.8/interfaces/VRFCoordinatorV2Interface.sol";

import "@chainlink/contracts/src/v0.8/VRFConsumerBaseV2.sol";

// Define SuperDynamicNFT contract which inherits from ERC721, ERC721URIStorage and VRFConsumerBaseV2

contract SuperDynamicNFT is ERC721, ERC721URIStorage, VRFConsumerBaseV2 {

// State variables for tracking ETH price and the corresponding emoji

int256 previousEthPrice = 0;

string ethIndicatorUp = unicode"

G) 返回Remix,将代码粘贴到新创建的demo.sol文件中。

注意:你可能会收到弹出警告,提示你正在粘贴大量代码,点击 "确定"。

H) 点击左侧边栏的 "Solidity Compiler "图标。

I) 点击 "Compile demo.sol"。

J) 点击左侧边栏的 "Deploy & run transactions "图标。

K) 点击 "Environment "下拉菜单,将其从 "Remix VM (Shanghai) "更改为 "Injected Provider - MetaMask",并按照MetaMask的提示连接你的钱包。

L) 在将智能合约部署到Polygon Mumbai区块链之前,我们需要上一步中创建的VRF订阅的订阅ID。回到https://vrf.chain.link/mumbai,记下我们刚刚创建的VRF订阅的ID。你的ID将不同于示例中的ID。首先,你必须让合同知道该订阅。在以后的步骤中,你将让订阅了解合同。

M) 在Remix中,在橙色 "Deploy(部署)"按钮旁边的输入框中输入订阅ID。

N) 单击 "部署",然后在MetaMask中确认交易。

O) 如果你在屏幕下方的控制台中看到一个绿色复选标记,恭喜你!你已成功将合约部署到Polygon Mumbai区块链上!

5步:向你的VRF订阅添加消费者

恭喜!你已成功将智能合约部署到Polygon Mumbai区块链上!你已经成功部署了智能合约。现在,是时候将智能合约作为消费者添加到你在步骤3中创建的VRF订阅中了。

A) 在Remix中,复制你的合约地址。

B) 转到 https://vrf.chain.link/mumbai,点击右上角的 "连接钱包 "连接你的钱包。如果你的钱包已经连接,你可以跳过这一步。

C) 点击你在步骤3中创建的订阅ID。你可以在 "我的订阅 "中找到你的订阅。

D) 点击 "添加消费者"。

E) 在 "消费者地址 "输入框中粘贴合同地址。这将让订阅知道你部署的合同。

F)点击 "添加消费者",并按照MetaMask的提示操作。

G) 交易确认后点击 "关闭 "并刷新页面。如果你看到如下图所示的消费者被添加到你的订阅中,你就成功完成了这一步。

第六步:使用Chainlink Automation自动化你的NFT

在这一步中,你将使用Chainlink Automation创建一个基于时间的维护,动态更新你的NFT的背景颜色和表情。

A) 进入https://automation.chain.link/mumbai,点击右上角的 "连接钱包 "连接你的钱包。如果你的钱包已经连接,你可以跳过这一步。

B) 点击 "注册新的维护"。

C) 选择 "基于时间"。

D) 粘贴你的合约地址并点击 "下一步"(如果你需要帮助找到你的合约地址,请参考步骤5A)。

E) 你将收到一个提示,内容如下: "无法获取ABI。在一个单独的标签页中,返回Remix并选择左侧边栏中的 "Solidity compiler "标签页。

F) 在 "Contract "下拉菜单中选择你的合同,点击 "Copy ABI "按钮。

G)回到你的维护注册,在输入框中粘贴ABI,点击 "下一步"。

H) 在 "目标函数 "下选择 "requestRandomWords",点击 "下一步"。

I) 在 "指定时间计划 "下,输入以下CRON表达式,以便每2分钟为你的NFT生成新的背景颜色:*/2 * * * * 。

J) 单击 "Next"(下一步)。

K) 给你的维护命名(例如:动态NFT演示),并输入2 LINK的起始余额。

L) 点击 "Register Upkeep "并批准交易,在MetaMask中部署CRON作业合同。

M) 一旦交易被批准,MetaMask将提示你确认第二个交易 "请求基于时间的维护注册"。

N) 等待交易确认并点击 "查看维护"。

O) 如果你在新创建的维护状态下看到 "激活",你就成功完成了这一步。恭喜你!

7步:在OpenSea上查看你的NFT

A) 进入https://testnets.opensea.io/,从右上角的下拉菜单中选择 "Profile"。

B) 如下图所示连接你的钱包。你可能需要在OpenSea上签署一笔交易。

C) 在你的个人资料中,点击标有 "ETH Watching SVG "的NFT。

D) 点击右上角的三个点,选择 "刷新元数据"。

E) 等待30秒,然后刷新页面,你将看到新创建的dNFT!

恭喜你!你已完成教程。每两分钟,直到你的订阅资金用完,你的NFT将检查ETH的价格,并请求一个新的背景颜色。下次刷新元数据时,你应该会看到一些不同的东西。

结论

如果你已经走到这一步,恭喜你!你成功地在Polygon Mumbai Testnet上部署了一个动态更新的NFT,它使用Chainlink Price Feeds来跟踪以太坊的价格,Chainlink VRF来选择随机的背景颜色,Chainlink Automation每两分钟更新一次图片。

评论

所有评论

推荐阅读

  • Polymarket将于下周一公布重大消息,或为发币或融资相关消息

    Cointime 报道,3月21日消息,Polymarket 官方团队成员 Mustafa 于 X 平台发文表示,下周一即将公布重大消息。因推文内容包含硬币符号,社区猜测或为融资或代币发射相关重大消息。 此前消息,预测市场平台 Kalshi 与 Polymarket 据悉正与潜在投资者洽谈新一轮融资,目标估值均约为 200 亿美元。日前,Kalshi 已完成新一轮超 10 亿美元融资,估值达 220 亿美元,较去年 12 月上一轮融资时的 110 亿美元估值翻倍。知情人士透露,本轮融资由 Coatue Management 领投,Kalshi 目前的年化收入为 15 亿美元。

  • 美众议院金融服务委员会将于3月25日举行代币化听证会,聚焦资本市场未来

    3 月 21 日,美国众议院金融服务委员会将于美东时间 3 月 25 日 10:00 举行听证会,主题为「代币化与资本市场的未来」,预计将重点讨论区块链技术在金融体系中的应用与监管方向。

  • 黄金创43年来最大周跌幅:一周暴跌11%,避险属性遭质疑

    3 月 21 日,受中东局势升级及利率预期影响,黄金价格大幅下挫,创下自 1983 年以来最大单周跌幅。现货黄金周五跌至约 4488 美元/盎司,单周累计下跌约 11%,自 2 月底以来累计跌幅已超 15%。市场分析认为,美联储年内或维持利率不变、鲍威尔关于通胀上行的表态削弱了黄金吸引力。同时,在伊朗冲突背景下,比特币表现相对更强,期间反弹超 11%,对黄金形成对比。

  • 分析:加密市场山寨币交易量大幅下滑,市场兴趣持续降温

    3 月 21 日,Cryptoquant 分析师 Darkfost 发文称,加密市场山寨币交易量持续走低,投资者兴趣明显减弱。在熊市背景及地缘政治不确定性影响下,山寨币表现持续跑输比特币,风险偏好显著收缩。当前,Binance 山寨币日交易量约为 77 亿美元,其它主要交易所合计约 188 亿美元,远低于 2025 年 10 月与 2 月高峰期(Binance 曾达 400 亿至 500 亿美元,其它平台达 630 亿至 910 亿美元)。目前 Binance 占据约 40% 的市场份额。分析指出,历史上交易量高峰往往对应市场阶段性顶部与 FOMO 情绪释放,而当前低迷成交环境也意味着潜在机会通常出现在市场关注度最低阶段。

  • 消息人士:特朗普政府正制定方案以夺取伊朗核材料储备

    3 月 21 日,据美国哥伦比亚广播公司(CBS)报道,多位知情人士透露,特朗普政府一直在谋划获取或转移伊朗核材料的方法和选项。此时,由美国和以色列领导的针对伊朗的军事行动正进入一个更加不确定的阶段。关于特朗普是否会下令实施此类行动,目前时机尚不明确。一位消息人士表示,他尚未做出任何决定。但两位消息人士表示,相关规划的核心是可能部署来自联合特种作战司令部的部队,该部队是精英军事单位,常负责最敏感的防扩散任务。

  • 中东冲突与加息预期共振:全球资产大震荡,美股四连跌、债市「血洗」、黄金创43年最大周跌幅

    3 月 21 日,中东局势持续升级叠加 Federal Reserve 加息预期骤然升温,全球市场遭遇系统性冲击。美股连续第四周下跌创一年最长跌势,纳指单日跌超 2%,科技股全线承压;全球债市收益率大幅飙升,美债、英债、德债均创多年新高,资金大规模去杠杆。大宗商品剧烈分化,黄金跌破 4500 美元关口,单周暴跌超 10%,创 1983 年以来最大跌幅,避险属性遭质疑;原油则因中东供应风险暴涨,布油重返 110 美元上方,迪拜原油期货单日飙升超 16%。与此同时,比特币在 7 万美元附近获得支撑,连续三周跑赢黄金。市场分析认为,地缘冲突推升能源价格并加剧通胀预期,迫使货币政策路径重定价,全球金融条件快速收紧,风险资产仍处于下行与再定价过程中。

  • 美团开源560B参数定理证明模型:72次推理通过率97.1%,刷新开源模型SOTA

    据 1M AI News 监测,美团 LongCat 团队开源 LongCat-Flash-Prover,一个 5600 亿参数的 MoE 模型,专攻形式化定理证明语言 Lean4 的数学推理任务。模型权重以 MIT 协议发布,已上线 GitHub、Hugging Face 和 ModelScope。模型将形式化推理拆解为三项独立能力:自动形式化(将自然语言数学问题转化为 Lean4 形式语句)、草图生成(产出引理风格的证明框架)和完整证明生成。三项能力均通过 Agent 工具集成推理(TIR)与 Lean4 编译器实时交互验证。训练方面,团队提出 Hybrid-Experts Iteration Framework 生成冷启动数据,并在强化学习阶段引入 HisPO 算法稳定 MoE 模型的长程任务训练,同时加入定理一致性和合法性检测机制防止 reward hacking。基准测试显示,LongCat-Flash-Prover 在开源权重模型中刷新了自动形式化和定理证明两项 SOTA。MiniF2F-Test 上仅用 72 次推理即达 97.1% 通过率,ProverBench 和 PutnamBench 分别达到 70.8% 和 41.5%,每题推理次数不超过 220 次。

  • Erik Voorhees再次增持1.44万枚ETH,总持仓量突破11.7万枚

    3 月 21 日,据 AI 姨监测,ShapeShift 创始人、比特币早期支持者 Erik Voorhees 关联地址,过去 11 小时买入 14,424.53 ETH,总持仓突破 11.7 万枚,持仓均价 2,160.24 美元,当前浮亏 114.5 万美元。

  • 消息人士:特朗普政府正制定方案以夺取伊朗核材料储备

    Cointime 报道,3月21日消息,据美国哥伦比亚广播公司(CBS)报道,多位知情人士透露,特朗普政府一直在谋划获取或转移伊朗核材料的方法和选项。此时,由美国和以色列领导的针对伊朗的军事行动正进入一个更加不确定的阶段。 关于特朗普是否会下令实施此类行动,目前时机尚不明确。一位消息人士表示,他尚未做出任何决定。但两位消息人士表示,相关规划的核心是可能部署来自联合特种作战司令部的部队,该部队是精英军事单位,常负责最敏感的防扩散任务。(金十)

  • GameFi板块市值暂报45.15亿美元,FLOKI排名第一

    3 月 21 日,据 Coingecko 数据,GameFi 板块市值暂报 45.15 亿美元,FLOKI 以 2.86 亿美元市值排名第一,排在第二第三位的分别为:The Sandbox(2.18 亿美元)、Undeads Games(2.11 亿美元)。此前 Solana 基金会主席 Lily Liu 表示,区块链游戏「不会再回归」。她认为,尽管行业曾寄望通过链上资产与开放世界推动 Web3 与元宇宙发展,但实际表现远未达预期。市场观点称链游长期依赖「Play-to-Earn」等代币激励模式,却缺乏真正吸引核心玩家的游戏性与内容构建能力,导致用户留存与生态可持续性不足。包括 Andreessen Horowitz(a16z)、Framework Ventures、Animoca Brands 在内的机构曾向该领域投入数十亿美元,但回报表现不佳。