Solidity合约标准----ERC721

这篇具有很好参考价值的文章主要介绍了Solidity合约标准----ERC721。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ERC721

非同质化token,它依赖于ERC-165

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity
如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

ERC721 快速体验

参照官方提供的案例,直接部署到remix,自动下载依赖 https://docs.openzeppelin.com/contracts/4.x/erc721

// contracts/GameItem.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

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

// ERC721: 0x80ac58cd
//ERC165: 0x01ffc9a7
contract GameItem is ERC721URIStorage {
   //NFT 实质:  address==>tokenId
    using Counters for Counters.Counter;
    Counters.Counter private _tokenIds;

   //NFT name,NFT简写
    constructor() ERC721("ZhongYuanUniversity", "ZUT") {}

   //白名单 player---》你的地址  tokenURI---》URL
    function awardItem(address player, string memory tokenURI)
        public
        returns (uint256)
    {
        //获取当前的tokenID
        uint256 newItemId = _tokenIds.current();
        
        //铸造NFT  (地址---》数字tokenID)
        _mint(player, newItemId);
        //设置token相关信息
        _setTokenURI(newItemId, tokenURI);
        //tokenid自增,防止重复
        _tokenIds.increment();
        return newItemId;
    }
}

ERC721 功能体验

部署成功后拥有以下功能

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

ERC721 功能测试

1. 设置待测试的4个账户

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

2. 铸造NFT

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

3. 查询NFT数量

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

4. 依据tokenid查询NFT属主

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

5.部分NFT委托授权第三者

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

6.查询NFT是否已被授权

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

7.由第三者执行NFT转移

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

8.查询属主NFT数量,判断是否转移成功

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

9.将NFT全权委托第三者

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

10.查询是否委托成功

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

11.由第三者执行NFT安全转移

safeTransferFrom()实现安全转移功能,其本质是如果接收方的用户地址为合约地址,则必须实现IERC721Receiver-onERC721Received接口。
如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

12.依据tokenid查询1号属主,判断是否转移成功

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

13.由第三者执行NFT安全转移,可以附加数据

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity

14.查询原始数据所有者NFT数量

原始数据所有者已全部转移NFT

如何获取erc721的token列表,solidity,区块链,以太坊,区块链,solidity文章来源地址https://www.toymoban.com/news/detail-784834.html

到了这里,关于Solidity合约标准----ERC721的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • NFT合约分析:ERC721A

    NFT合约分析:ERC721A

    读者可前往我的博客获得更好的阅读体验。 本文主要介绍标准NFT实现的一个变体,即 ERC721A 合约实现的相关细节。 ERC721A 是由著名NFT系列Azuki提出,该系列NFT是著名的蓝筹NFT。本文主要聚焦于 Azuki 提出的 ERC721A 合约的代码细节分析。 与传统的 ERC721 实现相比, ERC721A 在批量铸

    2023年04月26日
    浏览(15)
  • 区块链 | ERC721 标准

    目录 正文 1  ERC721 接口 事件 方法 2  ERC165 接口 3  可选实现接口:ERC721Metadata 4  可选实现接口:ERC721Enumerable 补充说明 1  NTF IDs 2  与 ERC-20 的兼容性 3  交易、挖矿、销毁 🥕 原文: 剖析非同质化代币 ERC721 标准 🥕 写在前面: 本文属搬运博客,自己留存学习。 ERC721 作为

    2024年04月28日
    浏览(9)
  • ERC721标准与加密猫

    2017 年 11 月 28 日,“加密猫”游戏出现在互联网上。这是基于以太坊的 ERC721 标准(不可互换通证)发行的加密数字宠物,每一只猫咪各不相同。 加密猫的正式中文名叫“谜恋猫”,游戏的官网称这些加密猫是“可收藏、可繁殖、讨人喜欢的”。用户可以用以太币换购这种猫

    2024年01月16日
    浏览(8)
  • conflux开发NFT智能合约(ERC721 & 工厂合约 & 可升级合约)

    以下场景可借鉴本文内容 需要创建很多合约 需要使用conflux代付机制(只需将工厂合约设置为代付,即可无限创建新合约) 合约想要有可升级的能力(如:特殊玩法 or 代码有bug) ERC-721 NFT 基于以上场景,需要三个主要合约实现 工厂合约 代理合约 逻辑合约 想要完全掌握本文

    2024年01月17日
    浏览(11)
  • 以太坊的演变:EIP、ERC 概念以及革命性的 ERC20、ERC721 和 ERC115 标准

    以太坊改进提案(EIP)代表了以太坊区块链内协作进步的顶峰。它们是技术文章或提案,描述对以太坊网络的建议更改或增强。 这些文档经过精心制作,呈现了新的功能、流程或环境,在任何形式的采用或实施之前都需要社区的审查。 至关重要的是要认识到改进提案的概念

    2024年04月11日
    浏览(15)
  • 创建你自己的ERC-721代币:一个简单的以太坊游戏智能合约模板

    区块链游戏正在成为一种新兴的游戏形式,其中代币化的游戏资产成为了一个重要的组成部分。今天,我们将介绍一个简单的ERC-721智能合约模板,这个模板可以帮助你在以太坊区块链上创建你自己的ERC-721代币,让你的游戏更有趣。 源码下载 ERC-721是一种免费的开放标准,它

    2024年02月07日
    浏览(11)
  • 以太坊区块链ERC-721协议的实现(NFT代币标准)

    ERC-721是以太坊区块链上用于NFT(非同质化代币)的一个标准,是一种其他开发人员都遵守的模板或者格式,用于创建代表数字资产的独特代币,并且每个ERC-721代币都是独一无二的。使用统一的标准可以使合约代码变得更简单,复用性更强。ERC-721的出现促进了NFT的创建,并在

    2024年02月04日
    浏览(10)
  • Solidity ERC777标准

    ERC777是一种能够向后兼容ERC20的代币标准,与ERC20的区别在于其新功能:openrater和hooks。 operator可以代理用户进行transfer、mint、burn操作,并且没有allowance的限制。应用场景举例: 1.有些朋友有多个以太坊钱包地址,不管是用于薅空投还是分批管理自己的代币资产;这样的情况下

    2024年02月16日
    浏览(5)
  • 代币合约 ERC20 Token接口

    代币合约 ERC20 Token接口

    在以太坊上发布代币就要遵守以太坊的规则,那么以太坊有什么规则呢?以太坊的精髓就是利用代码规定如何运作,由于在以太坊上发布智能合约是不能修改和删除的,所以智能合约一旦发布,就意味着永久有效,不可篡改。 在以太坊上发布了这么多与代币有关的合约,那么

    2024年02月02日
    浏览(15)
  • 通过metamask与合约交互(发送ERC20 TOKEN/原生TOKEN/方法调用) javascrpt实现

    通过metamask与合约交互(发送ERC20 TOKEN/原生TOKEN/方法调用) javascrpt实现

    1. 首先引入web3.js最新版本 ,再引入 jquery 遇到合约有ABI文件.个人习惯单独保存ABI文件.通过jquery远程读取. 实例化合约后直接在链上与合约交互 通过按钮什么的触发后就可以通过代码转账了.  2. 无ABI与合约交互,因为有的合约闭源了,所以我们直接手工构造data参数内容,免去了实

    2024年02月16日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包