Erc-721

在 ERC-721 中連結 IPFS

  • November 5, 2021

我目前正在開發自己的 NFT。它將只有一個 ID 為“0”的合約中的 NFT。

首先,你有沒有看到在鑄造 NFT 之後將 URI 添加到它的問題(這與它背後的用途有關)?

第二:在 IPFS 中連結 NFT 的最佳方法是什麼。它應該通過目錄連結還是直接連結(ipfs/directory-hash/token-id 或 ipfs/file-hash)

正如我所看到的,最新的 OpenZeppelin-Standard 意味著兩個屬性:初始的 Base-URI 和 tokenURI。現在在這種情況下 Base-URI 應該是“ipfs/”還是在另一種情況下是“directory-hash”。或者 Base-URI 應該只是 ipfs/ 而令牌 URI 應該是沒有目錄的散列文件。

另一種可能性是 Base URI 將是訪問文件的網關,但我寧願將網關放在 Webapp 上。

我真的很高興聽到一些意見和最佳實踐:)

因此,關於 NFT,最佳實踐將能夠具有以下內容:

  1. 將您的元數據資訊上傳到 IPFS 中的文件夾並獲取目錄的 CID。文件名應該是<tokenId>.json
  2. 將 CID 作為基本 URI 添加到智能合約中,例如ipfs://<CID>
  3. 現在在查詢tokenURI函式時返回ipfs://<CID>/<tokenId>.json

現在還要確保初始 NFT 丟棄可能存在錯誤,因此最佳實踐是能夠更改這些 baseURI 並在所有數據最終且正確後鎖定它。

這將防止您在 JSON 中出現任何錯誤時重新部署合約。此外,部署後您無法編輯 IPFS 文件夾中的任何文件。

引用自:https://ethereum.stackexchange.com/questions/112927