NFT代幣質押子母幣分紅dapp系統開發邏輯模式定製(案例演示)

nice1022發表於2023-03-08

NFT的圖片、開發I34-合約I633-部署53I9,音影片等資源需要有個儲存空間,我們一般會使用IPFS。


星際檔案系統IPFS(Inter-Planetary File System)是一個面向全球的、點對點的分散式版本檔案系統,目標是為了補充(甚至是取代)目前統治網際網路的超文字傳輸協議(HTTP),將所有具有相同檔案系統的計算裝置連線在一起。原理用基於內容的地址替代基於域名的地址,也就是使用者尋找的不是某個地址而是儲存在某個地方的內容,不需要驗證傳送者的身份,而只需要驗證內容的雜湊,透過這樣可以讓網頁的速度更快、更安全、更健壯、更持久。


idToOwner維護了誰擁有什麼通證,對映關係是通證ID到其所有者地址;

idToApproval維護了誰被授權操作某個通證,對映關係是通證ID到被授權操作的地址;

ownerToNFTokenCount維護了某個地址所擁有的nft總量,對映關係是使用者地址到代表總量的整數;

ownerToOperators維護了某個地址是否授權給了另外一個地址;


一個主要的modifier是canOperate:


// 檢視是否具備操作某個nft的許可權

modifier canOperate(

uint256 _tokenId

)

{

// 找到對應token的所有者

address tokenOwner = idToOwner[_tokenId];

require(

// 需要操作者是所有者或者被所有者授權

tokenOwner == msg.sender || ownerToOperators[tokenOwner][msg.sender],

// 否則返回錯誤

NOT_OWNER_OR_OPERATOR

);

_;

}

同時,ERC-721還支援可選的實現項,metadata extension,主要用以返回NFT的描述資訊。


ERC-1155

ERC-1155同上面的描述,因為實現了“打包”的功能,所以ERC-1155的大部分函式都支援batch的操作。相比於ERC-721,ERC-1155有很好的效率提升。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70011332/viewspace-2938718/,如需轉載,請註明出處,否則將追究法律責任。

相關文章