宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > Filecoin > 正文

教程 | 动态NFT的构建、部署和出售

作者:

时间:1900/1/1 0:00:00

NFT是只有在区块链领域里才存在的工具,有着广泛的应用和机遇。ERC721代币标准可以构建收藏品、独立代币、票据、游戏等多种应用,对于那些想要参与构建的开发者来说,一个动态和随机的NFT是一个很好的开始。但我们现在可以用它做什么?展示你新铸造的随机化或动态角色,是不是很赞?

我们也是这样认为的。在本教程中,我们将引导您完成所有步骤,将您自己的动态或随机化NFT部署到OpenSea市场。下面是一个例子,是我们希望达到的效果。

让我们来学习如何制作类似上面的东西吧!

NFT快速复习

ERC721定义了一个框架,用于制作代币的框架,这些代币是独一无二的,并且彼此之间是不同的,而流行的ERC20标准则定义了"同质化"的代币,这意味着代币都是可互换的,并且每个代币具有相同的价值。我们将更深入地探讨如何构建这些,以及社区如何跨平台代表它们。你也可以在OpenSeaNFT圣经中阅读更多内容。

如果你还没有查看上一篇关于在NFT中获取随机数的文章,请务必去回顾一下!开发者页面中有着各种智能合约和区块链工程教学的教程、指南和攻略。

什么是元数据?

在上一篇博客中,我们学习了如何构建随机NFT。现在,我们将使用ERC721标准的另一个重要部分:*元数据*,将其提升到一个新的水平。

所有的NFT都有所谓的元数据。你可以在原始的(ERC/EIP721提案)中读到这一点。社区发现,在Ethereum上存储图像真的很费力,而且成本很高。如果你想存储一张8×8的图片,存储这么多数据是的费用还可以接受,但如果你想要一张分辨率不错的图片,就需要花费巨额的费用。

Bitwise已撤回以太坊期货ETF申请:金色财经报道,Bitwise Asset Management已撤回其向美国证券交易委员会(SEC)提交的以太坊期货ETF申请。与此同时,Grayscale周三提交给SEC的一份修订文件似乎表明,该公司也暂停了提供以太坊(ETH)期货产品的计划。Grayscale上周向SEC提交了三个新ETF的注册文件,分别为Grayscale以太坊期货ETF、Grayscale全球比特币综合ETF和Grayscale隐私ETF。但在5月17日一份修订后的文件中,只显示了全球比特币综合ETF和隐私ETF的提案。

?[2023/5/18 15:10:15]

1KB图像

花费20美元,将这样一个图形添加到区块链中,并没有让NFT的创造者们真正兴奋起来。

我们意识到Ethereum2.0将解决很多这些令人头疼的扩展问题,但目前社区需要一个标准来帮助解决这个问题。元数据就是这个问题的答案。

元数据为链外存储的tokenId提供描述性信息。这些都是简单的API,链外UI调用这些API来收集有关token的所有信息。每个tokenId都有一个特定的tokenURI,定义了这个API调用,它返回一个JSON对象,看起来像这样:

{

"name":"YouNFTtokenname",

"description":"SomethingCoolhere",

"image":"https://ipfs.io/ipfs/QmTgqnhFBMkfT9s8PHKcdXBn1f5bG3Q5hmBaR4U6hoTvb1?filename=Chainlink_Elf.png",

"attributes":

}

元数据有四个不同的key:

Worldcoin推出World App以支持去中心化身份和金融以实现大规模采用:金色财经报道,Openai CEO Sam Altman 支持的项目 Worldcoin 推出了 World App 以补充 World ID 的发布。该应用程序旨在通过利用 World ID 使用户能够登录不同的网站、加密应用程序并以注重隐私的方式共享个人数据,从而实现去中心化身份和金融的民主化。这款被称为“极简钱包”的应用旨在为大众带来“去中心化的身份和金融”。[2023/5/11 14:56:12]

-`name`,定义了tokenIds的可读名称

-`description`,其中提供了一些关于token的背景信息

-`image`是图像的另一个URI

-`attributes`是token的统计数据

如果您的NFT与其他NFT进行交互,确保tokenURI上的属性(attributes)与您的NFT智能合约的属性(attributes)相匹配,这一点非常重要,否则当战斗或互动没有达到预期时,您可能会感到困惑!

为`tokenURI`分配出tokenIds之后,NFT市场就能够显示你的token,让你展示你的创造力。你可以在Rinkebytestnet的OpenSea市场上看到我们使用更新后的《龙与地下城》随机NFT代码仓库创建的一个NFT。这种市场有很多,比如Mintable、Rarible。

链上和链下元数据

你可以一直将所有的元数据存储在链上,但很多NFT市场不知道如何读取链上元数据_现在。_所以目前来说,使用链下元数据来可视化你的代币,同时拥有所有的链上元数据是最理想的,这样你的代币就可以互相交互。

名称、描述和属性很容易在链上存储,但图像才是难点。另外,我们在哪里存储tokenURI的API?很多人选择运行服务器来托管信息,这很好,但这是一个中心化的用于可视化token的地方。如果我们能把图片存储在链上,这样就不会宕机或被黑客攻击,是一个更好的选择。在上面的例子中,他们的图片使用的是指向IPFS的URL,这是一种常用地存储图片的方式。

IPFS是InterPlanetaryFileSystem的缩写,是一种点对点的超媒体协议,旨在使网络更快、更安全、更开放。它允许任何人上传一个文件,并且该文件是经过哈希校验的,所以如果文件发生改变,它的哈希值也会改变。这对于存储图片来说是非常理想的,因为这意味着每次图片更新时,链上的哈希/tokenURI也要改变,同时这意味着我们可以拥有元数据的历史记录。将图像添加到IPFS上也非常简单,而且不需要运行服务器。

上海升级后ETH提取数量已超过100万枚:金色财经报道,据Token Unlocks 统计,自 Shapella 硬分叉激活以来,ETH 从质押中提取的数量已超过 100 万枚,约为 104 万枚 ETH,而流入存款合约的 ETH 为 377,620 个 ETH。截止发稿,质押代币的总余额已减少约 657,990 ETH,价值约 1730 万。

据 Lookonchain 跟踪的一些大额提款,其中一些重新回到 staking。总余额为 19,844 ETH 的三个地址的所有者以及拥有 34,000 ETH 的 13 个钱包的所有者也是如此。但也有 71,444 ETH 进入了中心化交易所。[2023/4/17 14:09:04]

现在我们知道了要做什么,下面让我们来构建和部署吧!你部署了你的NFT代币和市场之后,一个代币将看起来像这样:

OpenSea上的Chainlink骑士

`levels`部分是代币的随机统计数据的地方!

给您一个额外的惊喜

现在,读到这里的朋友们,我们为你们准备了一个额外的惊喜。我们将在一秒钟内介绍如何部署这些NFT,但在这之前,我们在这个游戏中创建的这四个代币,将在第一个NFT寻宝活动中进行争夺!

这里是他们主网市场的链接。祝大家好运。

如何部署你的动态NFT市场

再次强调一下,我们使用最新版本的Dungeons&Dragons代码仓库,在readme中也有说明。

下面我们要做:

1.使用ChainlinkVRF构建一个可验证的随机D&D角色

2.使用IPFS添加一个tokenURI

3.将随机NFT添加到OpenSea市场中

Maverick Protocol在以太坊上推出DEX Maverick 1.0:3月9日消息,根据官方公告,DeFi平台Maverick Protocol在以太坊上推出了其去中心化交易所(DEX) Maverick1.0。该协议由Maverick团队构建了一年多的本地基于智能合约的自动做市(AMM)引擎提供支持,旨在让投资者获得比UniSwap更高的收入。[2023/3/9 12:50:25]

请记住,你可以改变仓库,使其适用于动态NFTs。你可以很容易地把VRF换成ChainlinkPriceFeeds或ChainlinkAPI。

这个仓库目前只适用于Rinkeby,所以请务必切换到到Rinkeby网络!我们会从头开始讲解,如果你没有读过上一篇文章也不用担心。

你需要在你的钱包里有RinkebyTestnetETH和RinkebyTestnetLINK才能继续。

配置环境变量

配置`MNEMONIC`和一个rinkeby`RINKEBY_RPC_URL`环境变量。你的`MNEMONIC`是你的钱包的种子短语。你可以从节点提供者服务中找到一个`RINKEBY_RPC_URL`,比如Infura。

然后,将它们设置在`bash_profile`文件中,或者像这样将它们导出到你的终端:

exportMNEMONIC='catdogfrog....'

exportRINKEBY_RPC_URL='www.infura.io/asdfadsfafdadf'

接下来你需要这样做:

克隆仓库并部署

gitclonehttps://github.com/PatrickAlphaC/dungeons-and-dragons-nft

cddungeons-and-dragons-nft

gitcheckoutopensea-update

npminstall

trufflemigrate--reset--networkrinkeby

上面的命令部署你的D&DNFT!

成都链安:国内天穹数藏宣称遭黑客攻击,黑客利用虚假余额购买盗取用户的藏品:5月17日消息,据成都链安“链必应-区块链安全态势感知平台”安全舆情监控数据显示,天穹数藏宣称遭黑客攻击,藏品售价异常高达近千万元。根据平台公告称:平台数据遭遇大量恶意攻击,黑客利用虚假余额购买盗取用户的藏品,导致数据异常,目前已恢复,平台已第一时间报警处理。成都链安安全团队初步分析,导致本次攻击的原因猜测为:攻击者通过传统网络安全攻破了平台方数据库,恶意篡改账户余额,导致大量用户高价挂单仍可成交,最终导致数据异常。成都链安安全团队建议:

1、 国内数字藏品平台方在设计、实现和部署的过程中,要关注通信与网络安全、主机安全、数据库安全、移动安全等传统安全领域,做好安全防护;

2、 国内数字藏品平台方在运维的过程中,要做好金融风控的设计和实施,避免出现大规模资金异动而不自知的情况;

3、 数字藏品消费者在选择交易平台时,需要关注平台合规风险,注意保障自身财产安全;

4、 数字藏品消费者警惕炒作风险和市场泡沫,避免泡沫破裂时造成财产损失。[2022/5/17 3:22:51]

创建角色

可以通过以下命令来尝试:

truffleexecscripts/fund-contract.js--networkrinkeby

truffleexecscripts/generate-character.js--networkrinkeby

truffleexecscripts/get-character.js--networkrinkeby

上面的命令可以通过随机数据创建一个新的角色!

根据你部署的频率,你可以通过改变`get-character.js`中的`dnd.getCharacterOverView(1)`命令来选择哪个角色,将`0`换成你喜欢的任何角色的tokenId。

以上命令提供了NFT的概览。因为调用返回的是大数字,所以会看到`BN`,你可以把它们转为整型来查看它们是什么。或者你可以更进一步...

在Etherscan查看

你可以免费获得一个EtherscanAPI密钥,并与链上的NFT进行交互。然后将`ETHERSCAN_API_KEY`设置为环境变量。

npminstalltruffle-plugin-verify

trufflerunverifyDungeonsAndDragonsCharacter--networkrinkeby--licenseMIT

这样就可以验证并发布你的合约,可以去它给你的Etherscan的`ReadContract`部分查看。

或者可以使用oneclickdapp,只需添加合约地址和ABI。可以在`build/contracts`文件夹中找到ABI。注意,ABI不是整个文件,只是写着`ABI`的部分。

部署到OpenSea

创建好NFT后,我们需要给它们一个`tokenURI`。TokenURI是向世界展示NFTs数据的标准。可以让我们更容易存储图片等内容,不必浪费气力在链上存储它们。

`TokenURI`代表一个URL或其他唯一的标识符,它是一个带有一些参数的`.json`文件。

{

"name":"Nameforit",

"description":"Anythingyouwant",

"image":"https://ipfs.io/ipfs/HASH_HERE?file.png",

"attributes":

}

下载IPFS和IPFS伴侣

现在,我们将把这些图像和元数据存储在IPFS中。你需要

1.IPFS

2.IPFScompanion

3.Pinata

IPFS伴侣让我们可以在Brave或Chrome等浏览器中原生查看IPFS数据。而Pinata可以让我们在节点宕机时也能保持IPFS文件的正常运行

如果你在浏览器中点击这个链接,你就会知道IPFS伴侣在工作:

https://ipfs.io/ipfs/QmTgqnhFBMkfT9s8PHKcdXBn1f5bG3Q5hmBaR4U6hoTvb1?filename=Chainlink_Elf.png。

就会出现下面的图像:

Chainlink精灵

添加图像到IPFS

IPFS节点建立起来之后,就可以开始向它添加文件了。首先要上传我们NFT的图像。前往IPFS安装的"files"部分。

?IPFS文件

这个D&D角色是什么样子的?将它添加到你的IPFS节点,然后"Pin"它。现在,你可以随意pin一个空白的图片,或者随便任何东西。

添加元数据文件到IPFS

然后需要将元数据JSON对象添加到IPFS中。需要从部署的代币中获取名称和属性。我们在`create-metadata.js`脚本中为做了一些工作。只需运行

truffleexecscripts/create-metadata.js--networkrinkeby

元数据会显示在`metadata`文件夹中。它现在只需要图片的URL!元数据是我们使用ChainlinkVRF创建的随机数和统计数据。现在我们得到我们创建的图片的CID,并将其添加到元数据JSON文件中,然后将该文件也添加到IPFS中,并将其pin住!它看起来会像这样:

Chainlink精灵JSON

Pinata

如果IPFS节点宕机了,或者关闭了计算机,我们将无法拉取元数据,所以我们需要一种方法来保持它们pin的状态,并让其他节点托管数据。这就是Pinata的作用。别担心,它是免费的!作用是在我们的IPFS节点停机时帮我们维护数据。复制图像和JSON元数据文件的CID,并将其添加到Pinata账户中。这需要几秒钟的时间来注册。

复制CID

这个元数据json文件就是`tokenURI`,所以我们用给图片NFT的tokenId来修改`set-token-uri.js`,并添加ipfstokenURI。

然后我们用

truffleexecscripts/set-token-uri.js--networkrinkeby

现在就可以得到NFT的地址,然后到OpenSeatestnet市场去看看我们做的是否正确。如果做得正确,它将看起来像这样。我们要先在OpenSea注册一个账户。

这里是添加你的testnetNFT合约在opensea上查看的链接。然后,就可以开始销售你的NFT了。

下一步

我们应该都准备好了!上面涵盖了很多信息,所以如果你有任何问题,一定要联系我们的Discord。智能合约和Chainlink工程师拥有庞大的社区,很多优秀的人正聚集在一起,将NFT和智能合约推向聚光灯下,所以Discord也是一个认识其他朋友的好地方。你还想看看ChainlinkBuilders计划,在那里你可以通过使用Chainlink构建赢得一些很酷的奖品!

和往常一样,一定要访问开发文档,你也可以订阅ChainlinkNewsletter来了解Chainlink的最新动态。

如果你在这里学到了新的东西,想展示你所开发的东西,或者为一些演示仓库开发了前端,欢迎在Twitter、Discord或Reddit上分享,并在你的仓库上加上#chainlink的标签。

标签:NFTINKTOKETOKNFTP价格starlink币为什么不涨Golden Society Token V2TiFi Token

Filecoin热门资讯
最近大热的NFT究竟是什么,我们应该参与吗?

加密领域的最新热潮正在改变我们在数字领域买卖商品的方式。一些卡通猫的盲盒、一段勒布朗高空扣篮的视频、一幅清晰度仅为5000像素的数码画即将在佳士得拍卖行出售。所有的这些都是不可替代的令牌,或者说NFT.

1900/1/1 0:00:00
美国纽约梅隆银行宣布将支持比特币服务

北京时间2月11日,据《华尔街日报》报道,美国历史最悠久的银行纽约梅隆银行宣布将为其客户提供比特币等数字货币的存储及转移服务。纽约梅隆银行资产服务和数字业务首席执行官RomanRegelman表示:“数字资产正在成为主流.

1900/1/1 0:00:00
比特币支付app Bottlepay种子轮获1100万英镑融资

据TheBlock2月24日报道,总部位于英国的比特币支付应用程序Bottlepay已经完成了价值1100万英镑的种子轮融资,投资者包括广受赞誉的基金经理AllenHoward.

1900/1/1 0:00:00
数据:42家公司持有超135万枚BTC 价值逾650亿美元

3月2日,根据门户网站bitcointreasuries.org的数据,目前有42家公司持有价值超过650亿美元的比特币。2020年底,有29家公司持有约110万枚比特币,按12月28日的汇率计算,价值超过300亿美元.

1900/1/1 0:00:00
美国股债双杀!鲍威尔令市场失望 比特币一度跌超4000美元

来源:华尔街见闻,作者:李丹,朱希美联储主席鲍威尔的讲话未显示他很担心通胀,没有释放采取“扭转操作”等可能行动的信号,美债收益率盘中飙升,美股加速下行,延续此前科技股主导的杀跌态势.

1900/1/1 0:00:00
事实证明,今年1月发生的重大事件反映了比特币未来一年的走向

一月份发生的一系列事件,对于比特币来说看起来和2020年12月一样充满利好。尽管一月份比特币取得了许多自创立以来的里程碑式成就,但是就某些客观的因素表明,这些成就并不反常.

1900/1/1 0:00:00