nft數藏系統開發功能(原始碼Demo)
隨著區塊鏈的發展,NFT也逐漸傳入國內(數字藏品),大家都很好奇數藏APP是怎樣開發出來的。今天就數藏APP開發過程中容易遇到的細節問題來簡單說一下數藏APP開發過程中的注意點。數I8O藏2857系8624統
The full name of the digital collection is Non-FungibleToken,abbreviated as NFT,which is a non-homogeneous token.The concept of NFT comes from foreign countries.It is a customized work using blockchain technology.The artwork forms a separate digital certificate.The authorization code is the information that protects copyright,and completes digital distribution,purchase,collection and use.The one-key digital collection of works is like a commodity,which is independent,indivisible,tamper-proof,verifiable and scarce.
我們做的主要修改是增加一個Token ID到URL的對映。因為我們準備將NFT的圖片和Metadata資料都放到IPFS上,所以增加一個Token ID到IPFS檔案雜湊的對映:
contract ERC1155{
mapping(uint256=>string)private _metadataHashes;
string private _uriPrefix=“”;
//返回”QmasWH…re2Ych?filename=metadata.json”
//如果使用伺服器API返回則可以固定uri為”{id}”
function uri(uint256 id)public view returns(string memory){
return _concat(_uriPrefix,_metadataHashes[id],“?filename=metadata.json”);
}
}
第二個修改是增加一個mint()方法來鑄造NFT:
function mint(uint256 amount,string memory metadataHash)public returns(uint256){
//如果只允許合約部署者鑄造,加上判斷:
//require(msg.sender==owner,“Not contract owner”);
nextTokenId++;
uint256 tokenId=nextTokenId;
_metadataHashes[tokenId]=metadataHash;
_mint(msg.sender,tokenId,amount,“”);
return tokenId;
}
最後一步是在isApprovedForAll()中判斷下當前轉移操作的發起者是不是OpenSea的代理合約:
function isApprovedForAll(address account,address operator)public view returns(bool){
//Whitelist OpenSea proxy contract for easy trading.
ProxyRegistry proxyRegistry=ProxyRegistry(proxyRegistryAddress);
if(address(proxyRegistry.proxies(account))==operator){
return true;
}
return _operatorApprovals[account][operator];
}
這麼做的目的是將來在OpenSea售賣的時候,不需要
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70016646/viewspace-2937314/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- NFT數藏系統開發詳細(邏輯功能)NFT實物數藏模式系統開發流程(原始碼搭建)模式原始碼
- 數藏nft系統開發原始碼獨立部署原始碼
- 探元數藏NFT開發丨藏品原始碼丨探元數藏系統設計開發丨NFT技術原始碼
- NFT金鳳數藝數藏開發丨原始碼丨金鳳數藝系統開發丨Defi丨NFT原始碼
- 悅境2.0數藏系統技術開發/原始碼/DAPP/NFT原始碼APP
- NFT數藏實物專案系統開發技術)(成熟原始碼)原始碼
- nft數藏現成案例系統開發
- Doodles數藏NFT元宇宙開發系統技術丨原始碼丨Doodles元宇宙功能元宇宙原始碼
- NFT數字藏品開發需求丨NFT數字藏品系統開發(開發原理)丨NFT數字藏品原始碼功能原始碼
- NFT數字藏品鏈上鑄造系統開發(開發案例)及原始碼功能原始碼
- NFT數字藏品鑄造系統開發(開發方案)丨NFT數字藏品鑄造系統開發(開發原始碼)原始碼
- NFT蝸客數藏開發丨蝸客數藏系統開發技術丨NFT數字藏品詳情
- nft數藏平臺系統開發技術方案丨數藏nft系統ai繪畫定製開發技術流程AI
- 鏈遊NFT遊戲/NFT元宇宙/系統技術開發/NFT數藏遊戲元宇宙
- NFT質押交易系統開發功能實現(原始碼示例)原始碼
- NFT天空數藏元宇宙技術開發系統及程式碼示例丨NFT元宇宙
- 數字藏品nft系統開發平臺搭建原始碼原始碼
- NFT鏈遊數藏盲盒元宇宙系統開發流程丨NFT鏈遊盲盒案例原始碼元宇宙原始碼
- NFT數字藏品系統開發原始碼部署丨NFT鏈遊元宇宙遊戲系統開發原始碼搭建原始碼元宇宙遊戲
- 金鳳數藝NFT數藏系統技術開發示例
- NFT元宇宙鏈遊/系統開發/NFT數藏/NFT鏈遊遊戲模式元宇宙遊戲模式
- NFT(數字藏品)系統開發案例詳情丨NFT數字藏品開發原始碼說明原始碼
- NFT數藏(鏈遊)元宇宙藝術交易系統功能開發詳情元宇宙
- NFT天空數藏系統技術開發丨python語言丨天空數藏nft丨defiPython
- MT碳數藏(NFT)系統模式開發技術分析模式
- NFT數字藏品系統開發功能技術需求方案丨AI繪畫數藏模式系統開發對接功能AI模式
- NFT數字藏品開發丨NFT盲盒數藏系統技術開發丨DAPP丨Defi丨NFTAPP
- 數字藏品系統開發(開發說明)丨NFT數字藏品系統開發(開發案例)及原始碼功能原始碼
- NFT數藏古玩拍賣平臺運營模式分析 | NFT數藏古玩拍賣平臺開發原始碼示例模式原始碼
- 非梵藝術NFT數藏開發/系統技術開發/非梵藝術NFT模式模式
- NFT非梵藝術/數藏系統開發/非梵藝術技術開發NFT詳情
- NFT生態藝術開發丨NFT數藏藝術丨NFT生態藝術系統開發技術
- NFT鏈遊系統開發,區塊鏈NFT卡牌遊戲原始碼區塊鏈遊戲原始碼
- NFT鏈上鑄造智慧合約系統開發(模型探討) | NFT鏈上智慧合約鑄造系統原始碼demo模型原始碼
- 數字藏品nft系統開發功能介紹詳情
- NFT數字資產系統開發方案整理,功能細化
- 智慧AI繪畫系統對接丨ai繪畫數藏模式系統開發功能版及原始碼AI模式原始碼
- 3D數字藏品NFT系統開發(現成原始碼案例)3D原始碼