Solidity

在 IPFS 上儲存 ERC721 元數據

  • October 19, 2021

我想將我的 ERC721 令牌的元數據儲存在 IPFS 上。目前,我從 OpenZeppelin ERC721.sol 合約繼承,我看到有一個 tokenURI 函式返回元數據的 URI。此令牌 URI 函式基於與令牌 ID 連接的 baseURI 建構其 URI。問題是,如果我想在 IPFS 上儲存,URI 將是儲存內容的雜湊值,它與 tokenURI 函式建構的 URI 相去甚遠。因此,我不確定如何在我的情況下建構 tokenURI?(當然我可以手動建構它,但是有沒有辦法編寫一個函式來自動化它?)

將您的設置_baseURI為“ipfs://”並將內容雜湊放入_tokenURI.

相關程式碼在https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC721/ERC721.sol#L141-L144

結果是您tokenURI(tokenID)將成為完整的 IPFS URI。

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