從 0 開始,結合 Anchor 打造 NFT 鑄造功能的 Action & Blink (Part 2 合約撰寫)

更新於 發佈於 閱讀時間約 4 分鐘

合約設計

更新 Anchor.toml 的 file 使其符合 devnet 設置

[provider]
cluster = "devnet"
wallet = "~/.config/solana/{your_key}.json"

下載 @solana/spl-token

pnpm add @solana/spl-token

更新 Cargo.toml dependencies and features

[features]
idl-build = ["anchor-lang/idl-build", "anchor-spl/idl-build"]

[dependencies]
anchor-lang = { version = "0.30.1", features = ["init-if-needed"] }
anchor-spl = {version = "0.30.1", features = ["metadata"]}
mpl-token-metadata = "4.1.2"

lib.rs 上,新增創建 NFT 的操作

raw-image

加上合約測試(tests/action-example.ts)即可完成合約的撰寫部分

raw-image

最後,我們來測試看看合約

假如錢包沒有錢,可以使用 solane config get 查看當前設定,然後運用 solana config set --url { Keypairs 位置 } 設定想要拿到 faucet 的帳號,最後使用 solana airdrop {數量} ,即可獲得 sol。
anchor test​

若出現下方結果,那麼恭喜你,成功 Mint 一個 NFT 了!!你也可以進一步點擊連結在explorer 上查看。


raw-image


raw-image

但是我要怎麼建置自己的 NFT 圖片 (實作 by Pinata)?

Pinata 是一個免費的集成服務,使得在 IPFS 上存儲和檢索媒體變得簡單。如果你還們有帳戶可以點擊上方連結註冊。
  1. 準備一張喜歡的圖片


raw-image
  1. 上傳圖片至IPFS系統
raw-image
  1. 完成上傳後,取得圖片 CID
raw-image
  1. 建立新的 json file 依照底下格式填入值
{
"name": {your name},
"symbol": {your symbol},
"description": {your description},
"external_url": {your url},
"seller_fee_basis_points": 0,
"image": "https://gateway.pinata.cloud/ipfs/{your CID}",
"attributes": [
{
"trait_type": {any type you want},
"value": {any value you want}
}
],
"properties": {
"files": [
{
"uri": "https://gateway.pinata.cloud/ipfs/{your CID}",
"type": "image/png"
}
],
"category": "image"
}
}
  1. 再次上傳 Json 至IPFS系統,並獲取 CID
https://gateway.pinata.cloud/ipfs/{CID} ex.https://gateway.pinata.cloud/ipfs/QmWqzpzBGQyEi3CN4EcDDxKY7cU2Y2SXcuKESkfomG1KBy
  1. 將 URL 和想要的 Name 和 Symbol 更新到 tests/action-example.ts ,然後再 Mint 一次即可獲得想要的圖片和名稱。

最終,我們成功拿到了自己定義的 NFT !!!!!





avatar-img
0會員
4內容數
留言
avatar-img
留言分享你的想法!

































































鄭鈞元的沙龍 的其他內容
本文介紹了 Action & Blink 在 Solana 區塊鏈上的應用。Action 是一個標準化的 API 端點,使開發者能夠生成和處理交易,而 Blink 則將這些交易轉換為易於分享的鏈接。這些工具使得使用者能夠輕鬆地在現有平臺上進行交易,本文以 Mint 為題,詳解實作 Blink 細節。
傳統支付系統面臨結算時間過長、中介費用高昂、銀行依賴及營業時間限制等多重困境。隨著金融科技的迅猛發展,穩定幣如 PayPal USD (PYUSD) 逐漸成為現代支付的解決方案。PYUSD 提供即時結算、高成本效益及全天候可用的特性,滿足當前用戶對便捷、安全的支付需求。
本文介紹了 Action & Blink 在 Solana 區塊鏈上的應用。Action 是一個標準化的 API 端點,使開發者能夠生成和處理交易,而 Blink 則將這些交易轉換為易於分享的鏈接。這些工具使得使用者能夠輕鬆地在現有平臺上進行交易,本文以 Mint 為題,詳解實作 Blink 細節。
傳統支付系統面臨結算時間過長、中介費用高昂、銀行依賴及營業時間限制等多重困境。隨著金融科技的迅猛發展,穩定幣如 PayPal USD (PYUSD) 逐漸成為現代支付的解決方案。PYUSD 提供即時結算、高成本效益及全天候可用的特性,滿足當前用戶對便捷、安全的支付需求。
你可能也想看
Google News 追蹤
Thumbnail
Blinks 是針對 Solana 的應用程式,可讓用戶透過網頁、社交媒體或 QR 碼執行鏈上交易。本文深入介紹 Blink 的特點、應用及其開發步驟,說明如何利用 Action API 創建用戶友好的介面,實現無縫的 web3 接入.
Thumbnail
Dynamic Metadata NFTs 是區塊鏈技術中的一大創新,特別是在遊戲領域,能提供更大的靈活性
Thumbnail
Blinks 是針對 Solana 的應用程式,可讓用戶透過網頁、社交媒體或 QR 碼執行鏈上交易。本文深入介紹 Blink 的特點、應用及其開發步驟,說明如何利用 Action API 創建用戶友好的介面,實現無縫的 web3 接入.
Thumbnail
Dynamic Metadata NFTs 是區塊鏈技術中的一大創新,特別是在遊戲領域,能提供更大的靈活性