Non-Fungible Tokens (NFTs) là các công cụ đơn giản không được tìm thấy bên ngoài không gian blockchain với nhiều tính ứng dụng. Xây dựng một NFT động và ngẫu nhiên là một khởi đầu tuyệt vời cho những người muốn bắt đầu xây dựng các bộ sưu tập, mã thông báo độc lập, vé, ứng dụng trò chơi hoặc bất cứ thứ gì mà tiêu chuẩn mã thông báo ERC721 cho phép. Nhưng chúng ta có thể làm gì với nó bây giờ? Khi mới vừa đúc NFT, bạn sẽ rất hứng thú để khoe các sản phẩm đấy, phải không nào?
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn qua tất cả các bước để triển khai NFT động (Dynamic NFT) hoặc ngẫu nhiên của riêng bạn vào thị trường OpenSea. Xem ví dụ tại đây.
Table of Contents
ERC721 là gì?
ERC721 (còn được gọi là NFT) xác định một khuôn khổ để tạo ra các mã thông báo duy nhất và khác biệt với nhau (do đó có thuật ngữ không thể thay thế), trong khi tiêu chuẩn ERC20 phổ biến xác định các mã thông báo “có thể thay thế”, có nghĩa là tất cả các mã thông báo đều có thể hoán đổi cho nhau và đảm bảo có cùng giá trị. Chúng tôi sẽ đi sâu hơn một chút về cách xây dựng những thứ này và cách cộng đồng đại diện cho chúng trên các nền tảng. Bạn cũng có thể đọc thêm trong OpenSea NFT Bible.
Nếu bạn chưa xem bài viết cuối cùng về cách lấy số ngẫu nhiên trong NFT, hãy đảm bảo bạn quay lại đó và xem qua! Tab Nhà phát triển có đầy đủ các hướng dẫn, hướng dẫn và cách thực hiện về các hợp đồng thông minh và các bài giảng kỹ thuật blockchain khác nhau.
Metadata (siêu dữ liệu) là gì?
Trong các bài viết khác, chúng ta đã học cách xây dựng các NFT ngẫu nhiên. Bây giờ chúng ta sẽ đưa nó lên cấp độ tiếp theo bằng cách sử dụng một phần quan trọng khác với tiêu chuẩn ERC721: metadata.
Tất cả các NFT đều có cái được gọi là metadata. Bạn có thể đọc về điều này trong đề xuất ERC / EIP 721 ban đầu. Về cơ bản, những gì cộng đồng phát hiện ra là việc lưu trữ hình ảnh thực sự bị đánh thuế và tốn kém trên Ethereum. Nếu bạn muốn lưu trữ một bức ảnh 8 x 8, việc lưu trữ nhiều dữ liệu này khá rẻ, nhưng nếu bạn muốn có một bức ảnh với độ phân giải tốt, bạn sẽ cần phải chi nhiều hơn.
Chi phí lưu trữ dữ liệu là (khoảng) 640k gas cho mỗi Kb dữ liệu. Nếu giá gas hiện tại là khoảng 50 Gwei hoặc 0,000000050 ETH và 1 ETH bằng 600 đô la hiện tại, bạn sẽ chi 20 đô la.
20 đô la để thêm nó vào blockchain. Điều này không thực sự kích thích những người sáng tạo NFT.
Chúng tôi biết rằng Ethereum 2.0 sẽ giải quyết được rất nhiều vấn đề đau đầu về quy mô này (XIN CHÚC MỪNG ĐẾN Eth 2.0 ĐỂ RA MẮT THÀNH CÔNG), nhưng hiện tại, cộng đồng cần một tiêu chuẩn để giúp giải quyết vấn đề này. Metadata hỗ trợ xử lý vấn đề này .
Metadata cung cấp thông tin mô tả cho tokenId được lưu trữ ngoài chuỗi. Đây là các API đơn giản mà giao diện người dùng ngoài chuỗi gọi để thu thập tất cả thông tin về mã thông báo. Mỗi tokenId có một tokenURI cụ thể xác định lệnh gọi API này, nó trả về một đối tượng JSON trông giống như sau:
{ "name": "You NFT token name", "description": "Something Cool here", "image": "https://ipfs.io/ipfs/QmTgqnhFBMkfT9s8PHKcdXBn1f5bG3Q5hmBaR4U6hoTvb1?filename=Chainlink_Elf.png", "attributes": [. . .] }
Bạn sẽ nhận thấy metadata có bốn khóa riêng biệt.
- name xác định mã tokenIds tên mà con người có thể đọc được
- description cung cấp một số thông tin cơ bản về token
- image là một URI của hình ảnh
- attributes cho phép bạn hiển thị số liệu thống kê của token này
Điều quan trọng là nếu NFT của bạn tương tác với các NFT khác, hãy đảm bảo rằng các thuộc tính trên tokenURI khớp với các thuộc tính của hợp đồng thông minh NFT của bạn, nếu không, bạn có thể sẽ gặp rắc rối khi kết nối chúng với nhau.
Khi chúng tôi đã chỉ định tokenIds cho tokenURI của họ, các chợ NFT sẽ hiện token này, cho phép bạn thể hiện khả năng sáng tạo của mình. Bạn có thể thấy cái mà chúng tôi đã tạo bằng repo NFT ngẫu nhiên của Dungeons & Dragons được cập nhật ở trang OpenSea của Rinkeby testnet. Có rất nhiều trong số các thị trường này như Mintable, Rarible và OpenSea.
On-Chain và Off-Chain Metadata (trên chuỗi và ngoài chuỗi)
Bạn luôn có thể lưu trữ tất cả siêu dữ liệu của mình trên chuỗi (trên thực tế, đó là cách duy nhất để các mã thông báo của bạn tương tác), nhưng rất nhiều thị trường NFT không biết cách đọc siêu dữ liệu trên chuỗi. Vì vậy, hiện tại, sử dụng siêu dữ liệu ngoài chuỗi để trực quan hóa mã thông báo của bạn, trong khi có tất cả siêu dữ liệu trên chuỗi là lý tưởng để các mã thông báo của bạn có thể tương tác với nhau.
name, description, và attributes dễ dàng được lưu trên chuỗi, nhưng phần image mới là phần khó. Ngoài ra, chúng tôi lưu trữ API này cho tokenURI ở đâu? Rất nhiều người chọn chạy máy chủ để lưu trữ thông tin, thì cũng ok, nhưng nó là nơi tập trung để hiện token. Sẽ tốt hơn nếu chúng ta có thể lưu trữ hình ảnh của mình trên chuỗi để chúng không bị hỏng hoặc bị tấn công. Bạn sẽ nhận thấy trong ví dụ trên, hình ảnh của họ đang sử dụng URL trỏ đến IPFS và đây là một cách phổ biến để lưu trữ hình ảnh.
Digital Marketing Specialist