Untuk NFT yang mengikuti protokol ERC-721, mewujudkan perdagangan desentralisasi adalah isu penting. Berbeda dengan token ERC-20, setiap Token NFT adalah unik, sehingga tidak dapat menetapkan harga perdagangan melalui kurva harga seperti beberapa DEX. Saat ini, platform perdagangan NFT yang dominan banyak menggunakan metode pemesanan untuk melakukan perdagangan, mirip dengan barang yang dipajang di rak supermarket, di mana pembeli dapat memilih barang dengan harga yang sesuai untuk dibeli.
Artikel ini akan memperkenalkan cara untuk mewujudkan platform perdagangan NFT desentralisasi yang dasar melalui kontrak pintar dan antarmuka frontend yang sederhana. Perlu dicatat bahwa konten artikel ini hanya untuk referensi belajar dan tidak cocok untuk digunakan langsung di lingkungan produksi.
Fitur Inti dari Platform NFT
Sebuah platform perdagangan NFT desentralisasi yang dasar harus memiliki fungsi-fungsi berikut:
Menambahkan produk: Penjual dapat menetapkan harga untuk menambahkan NFT ke platform.
reprove barang: pembeli dapat membeli NFT sesuai dengan harga yang ditetapkan
Biaya transaksi: platform dapat mengenakan biaya transaksi berdasarkan persentase.
Proses Penempatan Produk
Frontend: Pengguna memilih NFT dan menetapkan harga, klik untuk mengunggah
Kontrak: Pengguna memberikan wewenang kepada kontrak untuk mengoperasikan NFT-nya
Kontrak perlu memelihara tabel pemetaan harga untuk produk yang dipasang oleh pengguna. Meskipun data ini juga dapat disimpan di layanan terpusat untuk mengurangi beban kontrak, namun artikel ini akan menyimpannya di dalam kontrak.
Proses Pembelian Barang
Frontend: Pengguna memilih NFT yang ingin dibeli, klik beli
Kontrak: Mengalihkan dana pembeli kepada penjual, dan mengalihkan NFT kepada pembeli
Mewujudkan platform perdagangan NFT
1. Buat NFT uji coba
Untuk kebutuhan pengujian, kita dapat menggunakan Remix untuk dengan cepat menerapkan kontrak NFT yang mengikuti protokol ERC-721. Kita juga dapat langsung menggunakan NFT yang telah disiapkan untuk operasi selanjutnya.
2. Menulis kontrak pintar
Kontrak perlu mengimplementasikan metode inti berikut:
2.1 Penjual menambahkan NFT
Proses:
Pengguna memilih NFT
Atur harga ( dapat menggunakan stablecoin atau ETH sebagai acuan )
Memberikan otorisasi NFT kepada kontrak
Metode penyajian kontrak membutuhkan:
Verifikasi kepemilikan NFT
Tambahkan catatan listing
Memicu peristiwa peluncuran
2.2 Pembeli membeli NFT
Metode pembelian kontrak diperlukan:
Membaca data penawaran NFT
Hitung dan potong biaya transaksi
Mentransfer NFT kepada pembeli
Memicu peristiwa pembelian
2.3 Batalkan peluncuran
Cukup atur field isActive dalam catatan listing menjadi false.
2.4 Penarikan Biaya Transaksi
Platform dapat menyimpan biaya yang diterima ke dalam kontrak atau mengalirkannya ke alamat yang ditentukan.
3. Mengembangkan antarmuka depan
Alat utama yang digunakan:
Ant Design Web3: menghubungkan dompet dan menampilkan NFT
Wagmi: Interaksi dengan dompet
Next.js + Vercel: menyebarkan proyek
Frontend perlu mengimplementasikan tiga halaman utama:
Mint: digunakan untuk mencetak NFT uji coba
Beli:Pasar NFT
Portfolio: Mengelola NFT pengguna
3.1 Hubungkan Dompet
Menggunakan komponen koneksi Ant Design Web3 untuk mengimplementasikan fungsi koneksi dompet.
3.2 Halaman Mint
Gunakan metode useWriteContract dari wagmi untuk memanggil fungsi mint dari kontrak NFT.
3.3 Halaman Portofolio
Menampilkan NFT yang dimiliki pengguna, mendukung operasi penjualan dan penarikan.
Saat meluncurkan, perlu memanggil metode listNFT dan terlebih dahulu memberikan otorisasi NFT kepada kontrak.
Panggil metode cancelListing saat mencabut listing.
3.4 Halaman Beli
Tampilkan semua NFT yang sudah terdaftar dan valid.
Panggil metode purchaseNFT saat membeli, dan bayar ETH yang sesuai.
Dengan ini, sebuah platform perdagangan NFT desentralisasi dasar telah selesai. Dapat diterapkan di platform seperti Vercel untuk digunakan dalam pengujian.
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.
8 Suka
Hadiah
8
9
Bagikan
Komentar
0/400
MEVEye
· 07-19 22:03
Biaya transaksi terlalu mahal, ya?
Lihat AsliBalas0
PensionDestroyer
· 07-19 12:46
Biaya transaksi akan dianggap bodoh lagi.
Lihat AsliBalas0
AirdropF5Bro
· 07-18 20:13
Biaya transaksinya sangat tinggi, pergi saja!
Lihat AsliBalas0
PoetryOnChain
· 07-16 23:37
Ini akan dianggap bodoh lagi.
Lihat AsliBalas0
ShitcoinConnoisseur
· 07-16 23:32
Ini akan menggoreng nasi dingin dan terlihat jelek untuk dimakan
Panduan Lengkap untuk Membangun Platform Perdagangan NFT Desentralisasi dengan Smart Contract
Membangun platform perdagangan NFT Desentralisasi
Untuk NFT yang mengikuti protokol ERC-721, mewujudkan perdagangan desentralisasi adalah isu penting. Berbeda dengan token ERC-20, setiap Token NFT adalah unik, sehingga tidak dapat menetapkan harga perdagangan melalui kurva harga seperti beberapa DEX. Saat ini, platform perdagangan NFT yang dominan banyak menggunakan metode pemesanan untuk melakukan perdagangan, mirip dengan barang yang dipajang di rak supermarket, di mana pembeli dapat memilih barang dengan harga yang sesuai untuk dibeli.
Artikel ini akan memperkenalkan cara untuk mewujudkan platform perdagangan NFT desentralisasi yang dasar melalui kontrak pintar dan antarmuka frontend yang sederhana. Perlu dicatat bahwa konten artikel ini hanya untuk referensi belajar dan tidak cocok untuk digunakan langsung di lingkungan produksi.
Fitur Inti dari Platform NFT
Sebuah platform perdagangan NFT desentralisasi yang dasar harus memiliki fungsi-fungsi berikut:
Proses Penempatan Produk
Kontrak perlu memelihara tabel pemetaan harga untuk produk yang dipasang oleh pengguna. Meskipun data ini juga dapat disimpan di layanan terpusat untuk mengurangi beban kontrak, namun artikel ini akan menyimpannya di dalam kontrak.
Proses Pembelian Barang
Mewujudkan platform perdagangan NFT
1. Buat NFT uji coba
Untuk kebutuhan pengujian, kita dapat menggunakan Remix untuk dengan cepat menerapkan kontrak NFT yang mengikuti protokol ERC-721. Kita juga dapat langsung menggunakan NFT yang telah disiapkan untuk operasi selanjutnya.
2. Menulis kontrak pintar
Kontrak perlu mengimplementasikan metode inti berikut:
2.1 Penjual menambahkan NFT
Proses:
Metode penyajian kontrak membutuhkan:
2.2 Pembeli membeli NFT
Metode pembelian kontrak diperlukan:
2.3 Batalkan peluncuran
Cukup atur field isActive dalam catatan listing menjadi false.
2.4 Penarikan Biaya Transaksi
Platform dapat menyimpan biaya yang diterima ke dalam kontrak atau mengalirkannya ke alamat yang ditentukan.
3. Mengembangkan antarmuka depan
Alat utama yang digunakan:
Frontend perlu mengimplementasikan tiga halaman utama:
3.1 Hubungkan Dompet
Menggunakan komponen koneksi Ant Design Web3 untuk mengimplementasikan fungsi koneksi dompet.
3.2 Halaman Mint
Gunakan metode useWriteContract dari wagmi untuk memanggil fungsi mint dari kontrak NFT.
3.3 Halaman Portofolio
Menampilkan NFT yang dimiliki pengguna, mendukung operasi penjualan dan penarikan.
Saat meluncurkan, perlu memanggil metode listNFT dan terlebih dahulu memberikan otorisasi NFT kepada kontrak. Panggil metode cancelListing saat mencabut listing.
3.4 Halaman Beli
Tampilkan semua NFT yang sudah terdaftar dan valid. Panggil metode purchaseNFT saat membeli, dan bayar ETH yang sesuai.
Dengan ini, sebuah platform perdagangan NFT desentralisasi dasar telah selesai. Dapat diterapkan di platform seperti Vercel untuk digunakan dalam pengujian.