跳至主要內容
Change page

ERC-721 非同質化代幣標準

介紹

什麼是非同質化代幣?

非同質化代幣 (NFT) 用於以獨一無二的方式來識別某物或某人。 這類型的代幣非常適合在提供收藏品、密鑰、彩票、音樂會和體育比賽的編號座位等平台上使用。 這種特殊類型的代幣具有驚人潛力,因此它應得一個適當標準,而 ERC-721 正是來解決這個問題!

什麼是 ERC-721?

ERC-721 引入了非同質化代幣標準,換句話說,這類型的代幣是獨一無二,並且可以與來自同一智慧型合約的另一種代幣有不同的價值,這可能是由於其存在時間、稀有性甚至是視覺觀感等其他原因。 等一下,視覺觀感?

是的! 所有 NFT 都有一個名為 tokenIduint256 變數,因此對於任何 ERC-721 合約, contract address, uint256 tokenId 這組配對都必須是全域唯一的。 話雖如此,一個去中心化應用程式可以有一個 "轉換器", 它使用 tokenId 作為輸入,並輸出一些很酷的東西的圖片,像是殭屍、武器、技能或超讚的貓咪!

先決條件

主旨

ERC-721(以太坊意見請求 721)由 William Entriken、Dieter Shirley、Jacob Evans、Nastassia Sachs 於 2018 年 1 月提出,是一種非同質化代幣標準,在智慧型合約中實作代幣應用程式介面。

它提供的功能包括將代幣從一個帳戶轉移到另一個帳戶、獲取帳戶當前的代幣餘額、獲取特定代幣的所有者以及網路上可用代幣的總供應量。 此外它還有一些其他功能,例如批准帳戶中一定數量的代幣可以被第三方帳戶轉移。

如果智慧型合約實作以下方法和事件,則可以將其稱為 ERC-721 非同質化代幣合約。一旦部署,它將負責追蹤以太坊上創建的代幣。

來自 EIP-721 (opens in a new tab):

方法

Events

    event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId);
    event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId);
    event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved);

範例

讓我們看看為何標準如此重要,去讓我們檢查以太坊上的任何 ERC-721 代幣合約變得簡單。 我們只需要合約應用程式二進位介面 (ABI) 來創建任何 ERC-721 代幣的介面。 如下所示,我們將使用簡化的 ABI,使其成為一個低門檻的範例。

Web3.py 範例

首先,請確認您已安裝 Web3.py (opens in a new tab) Python 函式庫:

pip install web3

除了標準事件外,謎戀貓合約還有一些有趣的事件。

讓我們檢查其中兩個:PregnantBirth

延伸閱讀

頁面最後更新: 2026年4月3日

這篇文章對您有幫助嗎?