相比同质化加密货币,NFT是一种长期投资,其面临的挑战之一就是资金管理。持有NFT意味着将大量资金锁定在一种流动性较差的投资上,而且这种投资还可能会在几天内价格下跌。
超额抵押的NFT借贷协议(如传统DeFi中的Compound、Aave和Maker)允许用户在不损失NFT敞口的情况下,释放NFT投资组合中的一部分流动性。
在点对点(P2P)借贷中,借款人与出借人直接匹配。这是目NFT借贷的主要方式。
这样一来,NFT的所有者可以选择各种贷款价值和利率的组合,最终选择最适合自己的。因此,点对点借贷是对冲NFT敞口的完美选择。
数据智能指的是以数据作为生产资料,通过数据处理、机器学习、人机交互等技术,从大量数据中提炼、发掘关键信息,从而为人们的决策提供数据智能支持,减少或消除不确定性。
数据智能常应用于商业决策阶段,它让机器具备了推理能力,可以自动根据数据处理结果得出佳方案,从而让企业业务运转更加高效。
未来,随着处理数据的技术更加成熟,大数据会逐渐参与业务重塑的过程。很多业务环节不再需要人参与其中,而是都能由机器自动实现。同时,人机协同领域也会迎来迅猛发展,从目前的人工智能向人类智力增强转变。
伴随着元宇宙的发展,数据智能将从现实世界逐步应用到虚拟世界中,赋能元宇宙管理与创造。使机器具备推理能力和自动管理能力的数据智能可以与虚拟数字人紧密结合,让虚拟数字人变得更加智能。
当用户在元宇宙中进行各种经营活动时,可以雇佣智能虚拟数字人生产产品、管理店铺等。即使用户下线,智能虚拟数字人也可以在元宇宙中继续工作。
铸造NFT是在区块链上发布ERC-721真实代币的行为。继续使用我们在NFT教程第一部分[4]中的智能合约,让我们发挥web3技能,铸造一个NFT。在本教程结束时,你将能够按照你的内心(和钱包)的愿望铸造更多的NFT!
让我们开始吧!
第1步:安装web3
如果你跟随第一个教程创建好了NFT智能合约,你已经有使用Ethers.js的经验。Web3与Ethers相似,因为它同样是一个用于方便和以太坊区块链进行交互的库。在本教程中,我们将使用Alchemy Web3[5],它是一个增强的web3库,提供自动重试和强大的WebSocket支持。
在项目根目录下运行:
npm install alch/alchemy-web3
第2步:创建mint-nft.js
在脚本目录中,创建一个mint-nft.js文件并添加以下几行代码:
require("dotenv").config()
const API_URL=process.env.API_URL
const{createAlchemyWeb3}=require("alch/alchemy-web3")
const web3=createAlchemyWeb3(API_URL)
第3步:获取合约ABI
合约的ABI(应用二进制接口)是与智能合约交互的接口。你可以了解更多关于合约ABI的信息这里[6]。Hardhat会自动为我们生成一个ABI,并将其保存在MyNFT.json文件中。为了使用它,我们需要通过在mint-nft.js文件中添加以下几行代码来解析其内容:
const contract=require("../artifacts/contracts/MyNFT.sol/MyNFT.json")
如果你想看ABI,你可以把它打印到控制台:
console.log(JSON.stringify(contract.abi))
要运行mint-nft.js并看到ABI被打印到控制台,在终端运行:
node scripts/mint-nft.js
第4步:使用ipfs为NFT配置元数据
如果你还记得第一部分的教程,我们的mintNFT智能合约函数接收了一个tokenURI参数,这是一个描述NFT元数据的JSON文档--这才是真正给NFT带来生命的东西,可许它有可配置的属性,如名称、描述、图像和其他属性。
星际文件系统(IPFS)是一个去中心化的协议和点对点网络,用于在分布式文件系统中存储和共享数据。
我们将使用Pinata,一个方便的IPFS API和工具包,来存储我们的NFT资产和元数据,以确保我们的NFT是真正去中心化的。如果你没有Pinata账户,请注册一个免费账户这里[7],并完成账户电子邮件验证。
在你创建完账户后:
导航到Files页面,点击页面左上方的蓝色Upload按钮。
上传一张图片到pinata-这将是你的NFT的图片资产。随意给资产起个你想要的名字
上传后,你会在文件页面的表格中看到文件信息。你还会看到一个CID列。你可以通过点击旁边的复制按钮来复制CID。
现在,我们要再上传一份文件到Pinata。但在这之前,我们需要创建文件!
在根目录下,建立一个名为nft-metadata.json的新文件,并添加以下json代码:
{
"attributes":[
{
"trait_type":"Breed",
"value":"Maltipoo"
}
{
"trait_type":"Eye color",
"value":"Mocha"
}
],
"description":"The world's most adorable and sensitive pup.",
"image":"ipfs://QmWmvTJmJU3pozR9ZHFmQC2DNDwi2XJtf3QGyYiiagFSWb",
"name":"Ramses"
}
请自由改变json中的数据。你可以删除或添加到部分属性。最重要的是,确保图像字段指向你的IPFS图像的位置。
一旦你完成了对json文件的编辑,保存它并将其上传到Pinata,按照我们上传图片的相同步骤进行。


雷达卡


京公网安备 11010802022788号







