NFT是只有在區塊鏈領域里才存在的工具,有著廣泛的應用和機遇。ERC721代幣標準可以構建收藏品、獨立代幣、票據、游戲等多種應用,對于那些想要參與構建的開發者來說,一個動態和隨機的NFT是一個很好的開始。但我們現在可以用它做什么?展示你新鑄造的隨機化或動態角色,是不是很贊?
我們也是這樣認為的。在本教程中,我們將引導您完成所有步驟,將您自己的動態或隨機化NFT部署到OpenSea市場。下面是一個例子,是我們希望達到的效果。
讓我們來學習如何制作類似上面的東西吧!
NFT快速復習
ERC721定義了一個框架,用于制作代幣的框架,這些代幣是獨一無二的,并且彼此之間是不同的,而流行的ERC20標準則定義了"同質化"的代幣,這意味著代幣都是可互換的,并且每個代幣具有相同的價值。我們將更深入地探討如何構建這些,以及社區如何跨平臺代表它們。你也可以在OpenSeaNFT圣經中閱讀更多內容。
如果你還沒有查看上一篇關于在NFT中獲取隨機數的文章,請務必去回顧一下!開發者頁面中有著各種智能合約和區塊鏈工程教學的教程、指南和攻略。
什么是元數據?
在上一篇博客中,我們學習了如何構建隨機NFT。現在,我們將使用ERC721標準的另一個重要部分:*元數據*,將其提升到一個新的水平。
所有的NFT都有所謂的元數據。你可以在原始的(ERC/EIP721提案)中讀到這一點。社區發現,在Ethereum上存儲圖像真的很費力,而且成本很高。如果你想存儲一張8×8的圖片,存儲這么多數據是的費用還可以接受,但如果你想要一張分辨率不錯的圖片,就需要花費巨額的費用。
47枚Azuki NFT通過OTC完成交易,成交均價或為5.1 ETH:8月3日消息,加密KOL Yogi發推稱,NFT收藏家dingaling今日撮合一筆47枚Azuki NFT的OTC交易。
鏈上數據顯示,這47枚Azuki NFT目前由0x10C開頭地址持有。該地址于8小時前轉出239.7枚ETH,或為該筆交易的成交價格,由此推斷其Azuki成交均價為5.1枚ETH。[2023/8/3 16:16:02]
1KB圖像
花費20美元,將這樣一個圖形添加到區塊鏈中,并沒有讓NFT的創造者們真正興奮起來。
我們意識到Ethereum2.0將解決很多這些令人頭疼的擴展問題,但目前社區需要一個標準來幫助解決這個問題。元數據就是這個問題的答案。
元數據為鏈外存儲的tokenId提供描述性信息。這些都是簡單的API,鏈外UI調用這些API來收集有關token的所有信息。每個tokenId都有一個特定的tokenURI,定義了這個API調用,它返回一個JSON對象,看起來像這樣:
{
"name":"YouNFTtokenname",
"description":"SomethingCoolhere",
"image":"https://ipfs.io/ipfs/QmTgqnhFBMkfT9s8PHKcdXBn1f5bG3Q5hmBaR4U6hoTvb1?filename=Chainlink_Elf.png",
"attributes":
}
元數據有四個不同的key:
-`name`,定義了tokenIds的可讀名稱
-`description`,其中提供了一些關于token的背景信息
Robinhood 5月加密交易量降至21億美元,較上月下降43%:金色財經報道,交易平臺 Robinhood (HOOD) 在 5 月份的加密貨幣交易量急劇下降,盡管股票和期權的交易量仍然很高。該公司報告稱,5月份加密貨幣的交易量降至21億美元,較上月下降43%。按年計算,加密貨幣交易量下降了68%。每日平均交易收入5月份下降了22%,加密貨幣交易同比下降了53%。[2023/6/12 21:32:18]
-`image`是圖像的另一個URI
-`attributes`是token的統計數據
如果您的NFT與其他NFT進行交互,確保tokenURI上的屬性(attributes)與您的NFT智能合約的屬性(attributes)相匹配,這一點非常重要,否則當戰斗或互動沒有達到預期時,您可能會感到困惑!
為`tokenURI`分配出tokenIds之后,NFT市場就能夠顯示你的token,讓你展示你的創造力。你可以在Rinkebytestnet的OpenSea市場上看到我們使用更新后的《龍與地下城》隨機NFT代碼倉庫創建的一個NFT。這種市場有很多,比如Mintable、Rarible。
鏈上和鏈下元數據
你可以一直將所有的元數據存儲在鏈上,但很多NFT市場不知道如何讀取鏈上元數據_現在。_所以目前來說,使用鏈下元數據來可視化你的代幣,同時擁有所有的鏈上元數據是最理想的,這樣你的代幣就可以互相交互。
名稱、描述和屬性很容易在鏈上存儲,但圖像才是難點。另外,我們在哪里存儲tokenURI的API?很多人選擇運行服務器來托管信息,這很好,但這是一個中心化的用于可視化token的地方。如果我們能把圖片存儲在鏈上,這樣就不會宕機或被黑客攻擊,是一個更好的選擇。在上面的例子中,他們的圖片使用的是指向IPFS的URL,這是一種常用地存儲圖片的方式。
IPFS是InterPlanetaryFileSystem的縮寫,是一種點對點的超媒體協議,旨在使網絡更快、更安全、更開放。它允許任何人上傳一個文件,并且該文件是經過哈希校驗的,所以如果文件發生改變,它的哈希值也會改變。這對于存儲圖片來說是非常理想的,因為這意味著每次圖片更新時,鏈上的哈希/tokenURI也要改變,同時這意味著我們可以擁有元數據的歷史記錄。將圖像添加到IPFS上也非常簡單,而且不需要運行服務器。
數據:1萬枚比特幣從已關閉的交易所Wex的地址中轉出:金色財經報道,據鏈上數據監測,有1萬枚比特幣(價值超1.65億美元)從加密貨幣交易所Wex的相關錢包轉出,這是這些比特幣自2017年以來首次移動,且已經在幾筆交易中被轉移到新地址。
此前報道,加密貨幣交易所Wex的前首席執行官DmitryVasiliev在進入克羅地亞首都薩格勒布的弗朗喬·圖季曼機場時被捕。目前,WEX交易所現已關閉,其前身是BTC-e,由Alexander Vinnik經營。[2022/11/26 20:48:22]
現在我們知道了要做什么,下面讓我們來構建和部署吧!你部署了你的NFT代幣和市場之后,一個代幣將看起來像這樣:
OpenSea上的Chainlink騎士
`levels`部分是代幣的隨機統計數據的地方!
給您一個額外的驚喜
現在,讀到這里的朋友們,我們為你們準備了一個額外的驚喜。我們將在一秒鐘內介紹如何部署這些NFT,但在這之前,我們在這個游戲中創建的這四個代幣,將在第一個NFT尋寶活動中進行爭奪!
這里是他們主網市場的鏈接。祝大家好運。
如何部署你的動態NFT市場
再次強調一下,我們使用最新版本的Dungeons&Dragons代碼倉庫,在readme中也有說明。
下面我們要做:
1.使用ChainlinkVRF構建一個可驗證的隨機D&D角色
2.使用IPFS添加一個tokenURI
3.將隨機NFT添加到OpenSea市場中
請記住,你可以改變倉庫,使其適用于動態NFTs。你可以很容易地把VRF換成ChainlinkPriceFeeds或ChainlinkAPI。
歐洲央行或不打算在12月會議上確定縮表啟動時間:10月28日消息,據知情人士透露,歐洲央行目前并不打算在12月會議上宣布縮表啟動時間。在周四的政策會議結束后,歐洲央行行長拉加德表示,管委會決定在12月“繼續”討論如何減少在常規量化寬松(QE)計劃下購買的債券,并“確定關鍵原則”。溝通縮表框架將使決策者得以在采取行動前讓金融市場做好準備并評估投資者的反應。(財聯社)[2022/10/28 11:50:33]
這個倉庫目前只適用于Rinkeby,所以請務必切換到到Rinkeby網絡!我們會從頭開始講解,如果你沒有讀過上一篇文章也不用擔心。
你需要在你的錢包里有RinkebyTestnetETH和RinkebyTestnetLINK才能繼續。
配置環境變量
配置`MNEMONIC`和一個rinkeby`RINKEBY_RPC_URL`環境變量。你的`MNEMONIC`是你的錢包的種子短語。你可以從節點提供者服務中找到一個`RINKEBY_RPC_URL`,比如Infura。
然后,將它們設置在`bash_profile`文件中,或者像這樣將它們導出到你的終端:
exportMNEMONIC='catdogfrog....'
exportRINKEBY_RPC_URL='www.infura.io/asdfadsfafdadf'
接下來你需要這樣做:
克隆倉庫并部署
gitclonehttps://github.com/PatrickAlphaC/dungeons-and-dragons-nft
cddungeons-and-dragons-nft
gitcheckoutopensea-update
npminstall
trufflemigrate--reset--networkrinkeby
上面的命令部署你的D&DNFT!
萬事達卡CEO:5年內SWIFT可能將不復存在:5月25日消息,萬事達卡首席執行官Michael Miebach在參加世界經濟論壇一個關于CBDC的小組討論時表示,5年內SWIFT可能將不復存在。
該小組成員還包括數字美元項目執行董事Jennifer Lassiter、Digital Asset首席執行官Yuval Rooz、埃森哲董事、數字美元項目聯合創始人David Treat以及國際清算銀行高級經濟學家Jon Frost。他們都認為SWIFT將在5年內繼續存在。隨后萬事達卡發言人進一步補充道:“Miebach只是在強化此前關于SWIFT的說法——他們的業務在繼續發展,其現在的形式在未來會發生變化。他們正在增加更多的功能,而不僅僅是一個信息系統。”(CoinDesk)[2022/5/25 3:40:03]
創建角色
可以通過以下命令來嘗試:
truffleexecscripts/fund-contract.js--networkrinkeby
truffleexecscripts/generate-character.js--networkrinkeby
truffleexecscripts/get-character.js--networkrinkeby
上面的命令可以通過隨機數據創建一個新的角色!
根據你部署的頻率,你可以通過改變`get-character.js`中的`dnd.getCharacterOverView(1)`命令來選擇哪個角色,將`0`換成你喜歡的任何角色的tokenId。
以上命令提供了NFT的概覽。因為調用返回的是大數字,所以會看到`BN`,你可以把它們轉為整型來查看它們是什么。或者你可以更進一步...
在Etherscan查看
你可以免費獲得一個EtherscanAPI密鑰,并與鏈上的NFT進行交互。然后將`ETHERSCAN_API_KEY`設置為環境變量。
npminstalltruffle-plugin-verify
trufflerunverifyDungeonsAndDragonsCharacter--networkrinkeby--licenseMIT
這樣就可以驗證并發布你的合約,可以去它給你的Etherscan的`ReadContract`部分查看。
或者可以使用oneclickdapp,只需添加合約地址和ABI。可以在`build/contracts`文件夾中找到ABI。注意,ABI不是整個文件,只是寫著`ABI`的部分。
部署到OpenSea
創建好NFT后,我們需要給它們一個`tokenURI`。TokenURI是向世界展示NFTs數據的標準。可以讓我們更容易存儲圖片等內容,不必浪費氣力在鏈上存儲它們。
`TokenURI`代表一個URL或其他唯一的標識符,它是一個帶有一些參數的`.json`文件。
{
"name":"Nameforit",
"description":"Anythingyouwant",
"image":"https://ipfs.io/ipfs/HASH_HERE?file.png",
"attributes":
}
下載IPFS和IPFS伴侶
現在,我們將把這些圖像和元數據存儲在IPFS中。你需要
1.IPFS
2.IPFScompanion
3.Pinata
IPFS伴侶讓我們可以在Brave或Chrome等瀏覽器中原生查看IPFS數據。而Pinata可以讓我們在節點宕機時也能保持IPFS文件的正常運行
如果你在瀏覽器中點擊這個鏈接,你就會知道IPFS伴侶在工作:
https://ipfs.io/ipfs/QmTgqnhFBMkfT9s8PHKcdXBn1f5bG3Q5hmBaR4U6hoTvb1?filename=Chainlink_Elf.png。
就會出現下面的圖像:
Chainlink精靈
添加圖像到IPFS
IPFS節點建立起來之后,就可以開始向它添加文件了。首先要上傳我們NFT的圖像。前往IPFS安裝的"files"部分。
?IPFS文件
這個D&D角色是什么樣子的?將它添加到你的IPFS節點,然后"Pin"它。現在,你可以隨意pin一個空白的圖片,或者隨便任何東西。
添加元數據文件到IPFS
然后需要將元數據JSON對象添加到IPFS中。需要從部署的代幣中獲取名稱和屬性。我們在`create-metadata.js`腳本中為做了一些工作。只需運行
truffleexecscripts/create-metadata.js--networkrinkeby
元數據會顯示在`metadata`文件夾中。它現在只需要圖片的URL!元數據是我們使用ChainlinkVRF創建的隨機數和統計數據。現在我們得到我們創建的圖片的CID,并將其添加到元數據JSON文件中,然后將該文件也添加到IPFS中,并將其pin住!它看起來會像這樣:
Chainlink精靈JSON
Pinata
如果IPFS節點宕機了,或者關閉了計算機,我們將無法拉取元數據,所以我們需要一種方法來保持它們pin的狀態,并讓其他節點托管數據。這就是Pinata的作用。別擔心,它是免費的!作用是在我們的IPFS節點停機時幫我們維護數據。復制圖像和JSON元數據文件的CID,并將其添加到Pinata賬戶中。這需要幾秒鐘的時間來注冊。
復制CID
這個元數據json文件就是`tokenURI`,所以我們用給圖片NFT的tokenId來修改`set-token-uri.js`,并添加ipfstokenURI。
然后我們用
truffleexecscripts/set-token-uri.js--networkrinkeby
現在就可以得到NFT的地址,然后到OpenSeatestnet市場去看看我們做的是否正確。如果做得正確,它將看起來像這樣。我們要先在OpenSea注冊一個賬戶。
這里是添加你的testnetNFT合約在opensea上查看的鏈接。然后,就可以開始銷售你的NFT了。
下一步
我們應該都準備好了!上面涵蓋了很多信息,所以如果你有任何問題,一定要聯系我們的Discord。智能合約和Chainlink工程師擁有龐大的社區,很多優秀的人正聚集在一起,將NFT和智能合約推向聚光燈下,所以Discord也是一個認識其他朋友的好地方。你還想看看ChainlinkBuilders計劃,在那里你可以通過使用Chainlink構建贏得一些很酷的獎品!
和往常一樣,一定要訪問開發文檔,你也可以訂閱ChainlinkNewsletter來了解Chainlink的最新動態。
如果你在這里學到了新的東西,想展示你所開發的東西,或者為一些演示倉庫開發了前端,歡迎在Twitter、Discord或Reddit上分享,并在你的倉庫上加上#chainlink的標簽。
本文來源:中國宏觀經濟論壇CMF作者:邵宇,東方證券首席經濟學家以下觀點整理自邵宇在中國宏觀經濟論壇宏觀經濟熱點問題研討會上的發言 對數字貨幣的界定? 貨幣就是指M0、M1、M2.
1900/1/1 0:00:00行情概述: 繼上期報告所述,比特幣收斂形態跌破帶崩大盤,隨之彌補周一CME所形成的缺口位置22920-23535,配合灰度消息面的打壓,一度跌至22000關卡.
1900/1/1 0:00:00香港多家港媒1月5日消息稱,香港柴灣一名男子4日晚在車內跟南亞人交收虛擬貨幣比特幣,正在數錢時,被4名南亞男子搶走300萬港元巨款.
1900/1/1 0:00:00用你的錢包投票。 Ledger已經失去了用戶的信任。7月份泄露的客戶信息,早已提供給那些愿意付出代價的人,而現在,這些信息是免費的.
1900/1/1 0:00:00巴比特現場報道,12月19日,2020CCF區塊鏈技術大會暨首屆中國濟南區塊鏈產業發展高峰論壇在山東濟南舉行.
1900/1/1 0:00:00來源:證券日報網 記者:李正 近期,隨著比特幣創新高后又暴跌的消息沖上熱搜,其根本技術——區塊鏈技術再次受到投資者的關注.
1900/1/1 0:00:00