Mengembangkan platform perdagangan NFT desentralisasi dari nol
Untuk NFT yang mengikuti protokol ERC-721, cara untuk mewujudkan transaksi Desentralisasi berbeda dengan token ERC-20. Saat ini, platform perdagangan NFT yang dominan banyak menggunakan model pemesanan, mirip dengan produk yang dipajang di rak supermarket, di mana pembeli dapat memilih dengan bebas.
Artikel ini akan memperkenalkan bagaimana cara mewujudkan sebuah platform perdagangan NFT desentralisasi dasar melalui kontrak pintar dan antarmuka depan yang sederhana. Perlu dicatat bahwa ini hanya merupakan contoh pembelajaran, tidak cocok untuk lingkungan produksi yang sebenarnya.
Karakteristik dan Metode Transaksi NFT
NFT adalah singkatan dari token non-fungible, di mana setiap Token adalah unik. Biasanya NFT akan menampilkan gambar yang berbeda di dompet, dan setiap kelompok NFT memiliki ID unik yang mengidentifikasinya.
Karena sifat NFT ini, tidak dapat dinilai melalui kurva harga seperti token ERC-20. Saat ini, cara perdagangan yang lebih umum adalah menggunakan bentuk buku pesanan.
Mode Perdagangan Buku Pesanan
Model order book memiliki dua bentuk utama:
Harga Tetap: Penjual menetapkan harga, pembeli dapat langsung membeli jika merasa sesuai.
Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan pembelian, penjual dapat menjual jika merasa harga sesuai.
Secara umum, harga permintaan akan lebih rendah dari harga penetapan. Artikel ini akan fokus pada mode penetapan harga.
Fungsi dasar dari platform NFT
Sebuah platform perdagangan NFT dasar harus mencakup fungsi berikut:
Daftar produk: Menyusun NFT dengan harga yang ditentukan
Membeli barang: Membeli sesuai dengan harga NFT
Biaya platform: Mengambil persentase tertentu berdasarkan harga transaksi.
Proses Penempatan
Frontend: Pengguna memilih NFT dan menetapkan harga, kemudian mengklik untuk daftar.
Kontrak: Pengguna memberikan wewenang kepada kontrak untuk mengoperasikan NFT-nya
Sambil itu, perlu untuk mempertahankan tabel pemetaan harga untuk barang yang terdaftar dalam kontrak.
Proses Pembelian
Frontend: Pengguna memilih NFT yang ingin dibeli, klik beli
Kontrak: Mengalihkan dana pembeli kepada penjual, NFT kepada pembeli
Mengembangkan platform NFT
Selanjutnya, kita akan membangun sebuah platform perdagangan NFT sederhana dari nol.
1. Membuat kontrak NFT
Untuk keperluan pengujian, kita dapat menggunakan Remix untuk dengan cepat menerapkan kontrak NFT protokol ERC-721. Tentu saja, kita juga dapat langsung menggunakan kontrak NFT yang sudah ada.
2. Kontrak platform
Kontrak platform perdagangan harus mencakup fungsi inti berikut:
2.1 Penjual mengunggah NFT
Prosesnya sebagai berikut:
Pengguna memilih NFT
Atur harga ( menggunakan ETH atau stablecoin )
Memberikan NFT kepada kontrak
Memanggil metode penyajian
Metode penempatan harus:
Memverifikasi kepemilikan NFT
Tambah catatan peluncuran
Memicu peristiwa peluncuran
2.2 Pembeli membeli NFT
Proses pembelian:
Membaca data penempatan NFT
Hitung dan potong biaya transaksi
Transfer NFT kepada pembeli
Memicu peristiwa pembelian
2.3 Batalkan Pencantuman
Dengan mengatur bidang isActive menjadi false untuk membatalkan penempatan.
2.4 Penarikan Biaya Transaksi
Platform dapat mengenakan persentase tertentu dari biaya transaksi, disimpan dalam kontrak atau diteruskan ke alamat yang ditentukan.
3. Pengembangan Frontend
Pengembangan front-end memerlukan alat-alat berikut:
Ant Design Web3: untuk koneksi dompet dan tampilan NFT
Wagmi: digunakan untuk interaksi dompet
Next.js + Vercel: menerapkan proyek
Frontend utama terdiri dari tiga halaman: Mint, Buy, dan Portfolio.
3.1 Menghubungkan Dompet
Gunakan komponen koneksi Ant Design Web3 untuk mengimplementasikan fungsi koneksi dompet.
3.2 Halaman Mint
Digunakan untuk mencetak NFT uji, menggunakan metode useWriteContract dari wagmi untuk memanggil kontrak.
3.3 Halaman Portofolio
Menampilkan NFT yang dimiliki pengguna, mendukung operasi penjualan dan pembelian.
Perlu memanggil metode listNFT dan cancelListing dari kontrak, dan memberikan otorisasi NFT kepada kontrak sebelum listing.
3.4 Halaman Beli
Menampilkan semua NFT yang terdaftar, mendukung operasi pembelian.
Panggil metode purchaseNFT saat membeli, dan bayar ETH yang sesuai.
Dengan ini, sebuah platform perdagangan NFT desentralisasi dasar telah selesai dikembangkan. Kita dapat menerapkannya di platform seperti Vercel untuk pengujian.
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.
17 Suka
Hadiah
17
5
Bagikan
Komentar
0/400
failed_dev_successful_ape
· 07-29 23:38
Jangan repot-repot dengan hal-hal yang kaku, langsung saja tulis demo.
Lihat AsliBalas0
FalseProfitProphet
· 07-29 23:38
Kursus Pertama untuk Pemrogram
Lihat AsliBalas0
ZKProofster
· 07-29 23:34
hmm... secara teknis, implementasi ini kurang memiliki vektor privasi yang krusial
Memahami Proses Pengembangan Platform Perdagangan NFT Desentralisasi Secara Menyeluruh
Mengembangkan platform perdagangan NFT desentralisasi dari nol
Untuk NFT yang mengikuti protokol ERC-721, cara untuk mewujudkan transaksi Desentralisasi berbeda dengan token ERC-20. Saat ini, platform perdagangan NFT yang dominan banyak menggunakan model pemesanan, mirip dengan produk yang dipajang di rak supermarket, di mana pembeli dapat memilih dengan bebas.
Artikel ini akan memperkenalkan bagaimana cara mewujudkan sebuah platform perdagangan NFT desentralisasi dasar melalui kontrak pintar dan antarmuka depan yang sederhana. Perlu dicatat bahwa ini hanya merupakan contoh pembelajaran, tidak cocok untuk lingkungan produksi yang sebenarnya.
Karakteristik dan Metode Transaksi NFT
NFT adalah singkatan dari token non-fungible, di mana setiap Token adalah unik. Biasanya NFT akan menampilkan gambar yang berbeda di dompet, dan setiap kelompok NFT memiliki ID unik yang mengidentifikasinya.
Karena sifat NFT ini, tidak dapat dinilai melalui kurva harga seperti token ERC-20. Saat ini, cara perdagangan yang lebih umum adalah menggunakan bentuk buku pesanan.
Mode Perdagangan Buku Pesanan
Model order book memiliki dua bentuk utama:
Harga Tetap: Penjual menetapkan harga, pembeli dapat langsung membeli jika merasa sesuai.
Permintaan Pembelian: Pembeli mengeluarkan pesanan permintaan pembelian, penjual dapat menjual jika merasa harga sesuai.
Secara umum, harga permintaan akan lebih rendah dari harga penetapan. Artikel ini akan fokus pada mode penetapan harga.
Fungsi dasar dari platform NFT
Sebuah platform perdagangan NFT dasar harus mencakup fungsi berikut:
Proses Penempatan
Sambil itu, perlu untuk mempertahankan tabel pemetaan harga untuk barang yang terdaftar dalam kontrak.
Proses Pembelian
Mengembangkan platform NFT
Selanjutnya, kita akan membangun sebuah platform perdagangan NFT sederhana dari nol.
1. Membuat kontrak NFT
Untuk keperluan pengujian, kita dapat menggunakan Remix untuk dengan cepat menerapkan kontrak NFT protokol ERC-721. Tentu saja, kita juga dapat langsung menggunakan kontrak NFT yang sudah ada.
2. Kontrak platform
Kontrak platform perdagangan harus mencakup fungsi inti berikut:
2.1 Penjual mengunggah NFT
Prosesnya sebagai berikut:
Metode penempatan harus:
2.2 Pembeli membeli NFT
Proses pembelian:
2.3 Batalkan Pencantuman
Dengan mengatur bidang isActive menjadi false untuk membatalkan penempatan.
2.4 Penarikan Biaya Transaksi
Platform dapat mengenakan persentase tertentu dari biaya transaksi, disimpan dalam kontrak atau diteruskan ke alamat yang ditentukan.
3. Pengembangan Frontend
Pengembangan front-end memerlukan alat-alat berikut:
Frontend utama terdiri dari tiga halaman: Mint, Buy, dan Portfolio.
3.1 Menghubungkan Dompet
Gunakan komponen koneksi Ant Design Web3 untuk mengimplementasikan fungsi koneksi dompet.
3.2 Halaman Mint
Digunakan untuk mencetak NFT uji, menggunakan metode useWriteContract dari wagmi untuk memanggil kontrak.
3.3 Halaman Portofolio
Menampilkan NFT yang dimiliki pengguna, mendukung operasi penjualan dan pembelian.
Perlu memanggil metode listNFT dan cancelListing dari kontrak, dan memberikan otorisasi NFT kepada kontrak sebelum listing.
3.4 Halaman Beli
Menampilkan semua NFT yang terdaftar, mendukung operasi pembelian.
Panggil metode purchaseNFT saat membeli, dan bayar ETH yang sesuai.
Dengan ini, sebuah platform perdagangan NFT desentralisasi dasar telah selesai dikembangkan. Kita dapat menerapkannya di platform seperti Vercel untuk pengujian.