Membangun platform perdagangan NFT Desentralisasi dari nol
Dalam beberapa artikel sebelumnya, kami telah membahas cara melakukan perdagangan terdesentralisasi untuk token ERC-20 melalui DEX. Lalu, bagaimana cara melakukan perdagangan terdesentralisasi untuk NFT yang mengikuti protokol ERC-721?
Saat ini, platform perdagangan NFT utama sebagian besar menggunakan model pemesanan untuk melakukan transaksi, mirip dengan barang yang dipajang di rak supermarket, pembeli dapat membeli dan membawanya pergi jika mereka merasa harga sesuai. Artikel ini akan mengimplementasikan perdagangan NFT yang Desentralisasi melalui penulisan kontrak pintar dan halaman depan yang sederhana. Perlu dicatat bahwa konten artikel ini hanya untuk referensi belajar, tidak cocok untuk lingkungan produksi.
Pengenalan NFT
NFT adalah token non-fungible yang mengikuti protokol ERC-721. Setiap NFT adalah unik, biasanya ditampilkan dalam berbagai bentuk gambar di dompet, dan memiliki ID unik untuk membedakannya.
Karena karakteristik NFT, harga tidak dapat ditetapkan melalui kurva harga seperti token ERC-20. Oleh karena itu, cara perdagangan yang umum saat ini adalah menggunakan bentuk buku pesanan.
Mode perdagangan buku pesanan
Dalam mode buku pesanan, harga barang ditentukan secara manual, berbeda dengan cara menghitung harga melalui algoritma. Buku pesanan biasanya memiliki dua mode perdagangan:
Harga Penawaran: Penjual menetapkan harga jual, pembeli dapat membeli jika merasa harga tersebut sesuai.
Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan membeli, penjual dapat menjual jika merasa harga sesuai.
Secara umum, harga permintaan akan lebih rendah daripada harga tetap. Artikel ini akan fokus pada mode perdagangan harga tetap.
Fitur Dasar NFT DEX
Sebuah DEX NFT dasar harus mencakup fungsi-fungsi berikut:
Menyediakan barang: Menyimpan NFT dengan harga yang ditetapkan.
Membeli barang: membeli dengan harga NFT
Mengambil biaya: dikenakan berdasarkan proporsi harga transaksi
Proses Penjualan Barang
Frontend: Pengguna memilih NFT dan menetapkan harga, klik untuk menampilkan
Kontrak: Pengguna memberi wewenang kontrak untuk mengoperasikan NFT mereka
Kontrak perlu menjaga tabel pemetaan harga barang yang diunggah oleh pengguna. Untuk mengurangi beban kontrak, data ini juga dapat disimpan di layanan terdesentralisasi.
Proses Pembelian Barang
Frontend: Pengguna memilih NFT yang ingin dibeli, klik beli
Kontrak: Mentransfer dana pembeli ke penjual, NFT ke pembeli
Implementasi NFT DEX
Berikut ini kami akan membangun sebuah DEX NFT dari nol.
1. Buat NFT
Untuk keperluan pengujian, kita dapat dengan cepat membuat NFT protocol ERC-721 melalui Remix. Kita juga dapat langsung menggunakan NFT yang telah disiapkan.
2. Penulisan kontrak
Kontrak harus mencakup metode utama berikut:
2.1 Penjual mengunggah NFT
Proses:
Pengguna memilih NFT
Atur harga ( dalam stablecoin atau ETH )
Memberikan NFT kepada kontrak
Memanggil metode penempatan
Metode peluncuran yang harus dilaksanakan:
Verifikasi kepemilikan NFT
Tambahkan catatan listing
Memicu peristiwa peluncuran
2.2 Pembeli membeli NFT
Setelah pembeli memilih NFT dan melakukan pembayaran, kontrak dijalankan:
Membaca data NFT
Hitung dan potong biaya transaksi
Transfer NFT kepada pembeli
Memicu peristiwa pembelian
2.3 Batalkan daftar
Setel field isActive produk menjadi false.
2.4 Penarikan Biaya
Dapat menyimpan biaya transaksi dalam kontrak atau mentransfernya ke alamat yang ditentukan.
3. Pengembangan antarmuka DEX
Alat utama yang digunakan:
Ant Design Web3: menghubungkan dompet, menampilkan NFT kartu
Wagmi: interaksi dengan dompet
Nextjs + Vercel: Menerapkan proyek
Frontend harus mencakup tiga halaman: Mint, Buy, dan Portfolio.
3.1 Menghubungkan Dompet
Menggunakan komponen koneksi Ant Design Web3 untuk menghubungkan dompet.
3.2 Halaman Mint
Menggunakan metode useWriteContract dari wagmi untuk melakukan pencetakan NFT.
3.3 Halaman Portfolio
Menampilkan NFT pengguna, mendukung operasi penjualan dan penghapusan.
Halaman Beli 3.4
Menampilkan NFT yang telah terdaftar, mendukung operasi pembelian.
Dengan ini, front-end dari DEX NFT dasar telah selesai. Anda dapat menerapkannya di Vercel untuk diakses.
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
12 Suka
Hadiah
12
4
Posting ulang
Bagikan
Komentar
0/400
PoolJumper
· 07-21 17:01
Akan disusun oleh pro
Lihat AsliBalas0
DogeBachelor
· 07-19 17:08
Tolong teman, jelaskan lebih spesifik bagaimana cara operasinya.
Lihat AsliBalas0
BlockTalk
· 07-18 22:22
Lebih baik membuka kotak untuk dumping daripada mengerjakan kontrak sendiri.
Lihat AsliBalas0
ApeDegen
· 07-18 22:22
Akhirnya ada tutorial yang membawa saya untuk kaya!
Membangun platform perdagangan NFT desentralisasi dari nol: Panduan implementasi smart contract dan front-end
Membangun platform perdagangan NFT Desentralisasi dari nol
Dalam beberapa artikel sebelumnya, kami telah membahas cara melakukan perdagangan terdesentralisasi untuk token ERC-20 melalui DEX. Lalu, bagaimana cara melakukan perdagangan terdesentralisasi untuk NFT yang mengikuti protokol ERC-721?
Saat ini, platform perdagangan NFT utama sebagian besar menggunakan model pemesanan untuk melakukan transaksi, mirip dengan barang yang dipajang di rak supermarket, pembeli dapat membeli dan membawanya pergi jika mereka merasa harga sesuai. Artikel ini akan mengimplementasikan perdagangan NFT yang Desentralisasi melalui penulisan kontrak pintar dan halaman depan yang sederhana. Perlu dicatat bahwa konten artikel ini hanya untuk referensi belajar, tidak cocok untuk lingkungan produksi.
Pengenalan NFT
NFT adalah token non-fungible yang mengikuti protokol ERC-721. Setiap NFT adalah unik, biasanya ditampilkan dalam berbagai bentuk gambar di dompet, dan memiliki ID unik untuk membedakannya.
Karena karakteristik NFT, harga tidak dapat ditetapkan melalui kurva harga seperti token ERC-20. Oleh karena itu, cara perdagangan yang umum saat ini adalah menggunakan bentuk buku pesanan.
Mode perdagangan buku pesanan
Dalam mode buku pesanan, harga barang ditentukan secara manual, berbeda dengan cara menghitung harga melalui algoritma. Buku pesanan biasanya memiliki dua mode perdagangan:
Harga Penawaran: Penjual menetapkan harga jual, pembeli dapat membeli jika merasa harga tersebut sesuai.
Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan membeli, penjual dapat menjual jika merasa harga sesuai.
Secara umum, harga permintaan akan lebih rendah daripada harga tetap. Artikel ini akan fokus pada mode perdagangan harga tetap.
Fitur Dasar NFT DEX
Sebuah DEX NFT dasar harus mencakup fungsi-fungsi berikut:
Proses Penjualan Barang
Kontrak perlu menjaga tabel pemetaan harga barang yang diunggah oleh pengguna. Untuk mengurangi beban kontrak, data ini juga dapat disimpan di layanan terdesentralisasi.
Proses Pembelian Barang
Implementasi NFT DEX
Berikut ini kami akan membangun sebuah DEX NFT dari nol.
1. Buat NFT
Untuk keperluan pengujian, kita dapat dengan cepat membuat NFT protocol ERC-721 melalui Remix. Kita juga dapat langsung menggunakan NFT yang telah disiapkan.
2. Penulisan kontrak
Kontrak harus mencakup metode utama berikut:
2.1 Penjual mengunggah NFT
Proses:
Metode peluncuran yang harus dilaksanakan:
2.2 Pembeli membeli NFT
Setelah pembeli memilih NFT dan melakukan pembayaran, kontrak dijalankan:
2.3 Batalkan daftar
Setel field isActive produk menjadi false.
2.4 Penarikan Biaya
Dapat menyimpan biaya transaksi dalam kontrak atau mentransfernya ke alamat yang ditentukan.
3. Pengembangan antarmuka DEX
Alat utama yang digunakan:
Frontend harus mencakup tiga halaman: Mint, Buy, dan Portfolio.
3.1 Menghubungkan Dompet
Menggunakan komponen koneksi Ant Design Web3 untuk menghubungkan dompet.
3.2 Halaman Mint
Menggunakan metode useWriteContract dari wagmi untuk melakukan pencetakan NFT.
3.3 Halaman Portfolio
Menampilkan NFT pengguna, mendukung operasi penjualan dan penghapusan.
Halaman Beli 3.4
Menampilkan NFT yang telah terdaftar, mendukung operasi pembelian.
Dengan ini, front-end dari DEX NFT dasar telah selesai. Anda dapat menerapkannya di Vercel untuk diakses.