Bài viết
Chia sẻ kiến thức của bạn.

Bên trong Kiosk của Sui: Cách xây dựng thị trường NFT an toàn
Kiosk của Sui là gì?
Kiosk là một mô-đun hợp đồng thông minh gốc trên blockchain Sui, được thiết kế để tiêu chuẩn hóa và đơn giản hóa cách lưu trữ, quản lý và giao dịch NFT. Nó hoạt động như một cửa hàng NFT có thể lập trình được — lý tưởng cho các nhà phát triển muốn tránh phát minh lại bánh xe cho mọi dự án liên quan đến NFT.
Cho dù bạn đang xây dựng thị trường, sàn giao dịch tài sản trò chơi hay thư viện sưu tập kỹ thuật số, Kiosk cung cấp cho bạn các khối xây dựng an toàn, có thể tùy chỉnh.
🛠️ Các tính năng chính của Kiosk
- 📦 Lưu trữ & Hiển thị NFT: Người dùng có thể gửi NFT vào hợp đồng thông minh Kiosk để lưu trữ, khoe hoặc giao dịch chúng
- 🔐 Chuyển quyền sở hữu an toàn: Tất cả các luồng mua/bán đều được tiêu chuẩn hóa và có thể xác minh được — tạm biệt các giao dịch hoán đổi mờ ám 👋
- 🎛️ Quyền chi tiết: Kiosk cho phép các nhà phát triển xác định chính xác ai có thể làm gì với mỗi NFT.
- 📈 Khả năng mở rộng cho nhà phát triển: Đấu giá cắm vào, danh sách hàng loạt, gói và hơn thế nữa.
🤔 Tại sao phải xây dựng với Kiosk?
Hãy tưởng tượng bạn đang khởi chạy một ứng dụng NFT. Bạn có thể sẽ cần một cách để người dùng lưu trữ tài sản một cách an toàn. Một cách để liệt kê và mua tài sản.
Kiosk xử lý tất cả những điều đó cho bạn. Thay vì viết tất cả các luồng này từ đầu (và gặp rủi ro về lỗi 🐛 hoặc khai thác), bạn sử dụng API đã được thử nghiệm chiến đấu của Kiosk.
🧪 Ứng dụng ví dụ: Xây dựng với Kiosk
Hãy đi vào một ví dụ thực tế. Bạn sẽ tạo một mô-đun NFT cơ bản, sau đó sử dụng mô-đun Kiosk để gửi nó, liệt kê nó và cho phép người khác mua nó.
Phân tích mã từng bước
module 0xNFT::simple_nft {
use sui::object::{UID};
use sui::tx_context::TxContext;
struct SimpleNFT has key {
id: UID,
name: String,
description: String,
url: String,
}
public entry fun mint(
name: String,
description: String,
url: String,
ctx: &mut TxContext
): SimpleNFT {
SimpleNFT {
id: UID::new(ctx),
name,
description,
url,
}
}
}
Lệnh (Sui CLI)
# Compile your package
sui move build
# Deploy to network
sui client publish --gas-budget 10000
# Mint NFT
sui client call --function mint --module simple_nft \
--args "My NFT" "Desc" "https://example.com/img.png" --gas-budget 1000
# Initialize Kiosk
sui client call --function init_kiosk --module kiosk_example --gas-budget 1000
# Deposit NFT to Kiosk
sui client call --function deposit_nft --module kiosk_example \
--args <NFT_ID> <KIOSK_ID> <KIOSK_OWNER_CAP_ID> --gas-budget 1000
# List for sale
sui client call --function list_nft_for_sale --module kiosk_example \
--args <KIOSK_ID> <KIOSK_OWNER_CAP_ID> <NFT_ID> 100 --gas-budget 1000
# Purchase NFT
sui client call --function purchase_nft --module kiosk_example \
--args <KIOSK_ID> <NFT_ID> <PAYMENT_COIN_ID> --gas-budget 1000
Kiosk là một trong những nguyên thủy mạnh mẽ nhất trong hệ sinh thái Sui dành cho các nhà phát triển NFT. Nó trừu tượng hóa logic lặp đi lặp lại và đưa tính bảo mật và mô-đun vào ngăn xếp ứng dụng của bạn. Chỉ với một vài dòng mã, bạn đang xây dựng các luồng thị trường NFT đầy đủ sẵn sàng cho sản xuất và được thử nghiệm chiến đấu.
- Sui
Tôi có thể sử dụng Kiosk để xây dựng hệ thống trao đổi NFT ngang hàng (như giao dịch NFT trực tiếp mà không cần mã thông báo) không? Hay nó chỉ dành cho các thiết lập mua/bán?”
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Kiếm phần của bạn từ 1000 Sui
Tích lũy điểm danh tiếng và nhận phần thưởng khi giúp cộng đồng Sui phát triển.