Réaliser une plateforme de trading NFT décentralisée simple
Pour les NFT suivant le protocole ERC-721, comment réaliser une transaction décentralisée ? Actuellement, la plupart des plateformes de trading NFT adoptent principalement un mode de commande, semblable à des produits exposés sur des étagères, où les acheteurs peuvent acheter si le prix leur semble approprié. Cet article expliquera comment réaliser une fonctionnalité de trading NFT décentralisé de base en écrivant des contrats intelligents et une simple page frontale.
NFT( Token non fongible ) Introduction
Un NFT est un jeton non fongible, qui suit le protocole ERC-721, chaque jeton étant unique. En général, les NFT affichent différentes images dans le portefeuille, et chaque groupe de NFT possède un identifiant unique pour les distinguer. En raison des caractéristiques des NFT, il n'est pas possible de fixer un prix comme pour les jetons ERC-20 via une courbe de prix, c'est pourquoi la méthode de transaction courante est sous forme de carnet de commandes.
Mode de négociation sur le carnet de commandes
Dans le modèle de carnet de commandes, le prix des produits est fixé par l'homme, contrairement à la méthode des teneurs de marché automatiques qui calcule le prix en fonction de la courbe des prix. Le carnet de commandes comporte généralement deux modes de transaction :
Ordre de prix : le vendeur fixe le prix de vente, l'acheteur peut acheter s'il le juge approprié.
Ordre d'achat : l'acheteur émet un ordre d'achat, le vendeur peut vendre s'il juge le prix approprié.
En général, le prix des ordres d'achat sera inférieur au prix des ordres de vente. Cet article présente principalement la méthode de transaction des ordres de vente.
Fonctionnalités de base de la plateforme NFT
Une plateforme de NFT de base devrait inclure les fonctionnalités suivantes :
Mettre en vente des produits : Mettre le NFT en vente au prix fixé.
Acheter des produits : acheter au prix NFT
Frais de plateforme : prélevés en fonction du prix de transaction.
processus de mise en ligne des produits
Frontend : L'utilisateur choisit un NFT et fixe le prix, puis clique sur mettre en vente.
Contrat : l'utilisateur autorise l'opération de NFT par le contrat
Le contrat doit maintenir une table de correspondance des prix des produits mis en vente par les utilisateurs.
Processus d'achat de produits
Frontend : l'utilisateur choisit le NFT et clique sur acheter
Contrat : transférer les fonds de l'acheteur au vendeur, NFT au acheteur
Réaliser une plateforme d'échange NFT
Cette section va créer à partir de zéro une simple plateforme NFT.
1. Créer un NFT de test
Vous pouvez utiliser Remix pour déployer rapidement un contrat NFT basé sur le protocole ERC-721 pour des tests.
2. Rédaction de contrats intelligents
Le contrat doit inclure les principales méthodes suivantes :
2.1 Le vendeur met en ligne le NFT
Flux:
L'utilisateur choisit le NFT
Définir le prix
Autoriser le NFT au contrat
Appeler la méthode de mise en ligne
La méthode de mise en ligne nécessite :
Vérifier la propriété de l'NFT
Ajouter un enregistrement de mise en vente
Déclencher un événement de mise en vente
2.2 L'acheteur achète des NFT
Étapes d'exécution du contrat:
Lire les données NFT
Calculer et déduire les frais de transaction
Transférer le NFT à l'acheteur
Déclencher l'événement d'achat
2.3 Annuler la mise en vente
Définir le champ isActive des enregistrements en vente sur false.
2.4 Retrait des frais de transaction
Retirer les frais accumulés dans le contrat à l'adresse spécifiée.
3. Développer l'interface frontale
Utilisez les outils suivants :
Ant Design Web3 : connexion de portefeuille et affichage des NFT
Wagmi: interaction avec le portefeuille
Next.js + Vercel : déployer le projet
L'interface utilisateur comprend trois pages : Mint, Buy et Portfolio.
3.1 Connecter le portefeuille
Utiliser le composant de connexion Web3 d'Ant Design pour établir une connexion de portefeuille.
3.2 Page de Mint
Utilisé pour frapper des tests NFT, appeler le contrat en utilisant la méthode useWriteContract de wagmi.
3.3 Page de portefeuille
Afficher les NFT des utilisateurs, prendre en charge les opérations de mise en ligne et de retrait.
Processus de mise en ligne:
Autoriser le NFT au contrat
Appeler la méthode listNFT
Retrait : appel de la méthode cancelListing
3.4 Page d'achat
Afficher tous les NFT mis en vente, supporte l'opération d'achat.
Appelez la méthode purchaseNFT lors de l'achat, en utilisant ETH pour le paiement.
Après avoir terminé les étapes ci-dessus, une plateforme NFT fonctionnelle de base est mise en place et peut être déployée sur Vercel pour des tests.
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
18 J'aime
Récompense
18
4
Partager
Commentaire
0/400
TokenSleuth
· 07-15 08:04
C'est comme ça, sans rien d'extraordinaire.
Voir l'originalRépondre0
LiquidityWitch
· 07-12 12:42
Combien de frais peut-il y avoir ? Soyez réaliste.
Voir l'originalRépondre0
TheMemefather
· 07-12 12:40
Avec les frais de transaction, vous pouvez gagner beaucoup.
Voir l'originalRépondre0
VibesOverCharts
· 07-12 12:39
Encore envie de prendre les gens pour des idiots avec de nouveaux pigeons, n'est-ce pas ?
Construire une plateforme de trading NFT décentralisée à partir de zéro : smart contracts et mise en œuvre frontale
Réaliser une plateforme de trading NFT décentralisée simple
Pour les NFT suivant le protocole ERC-721, comment réaliser une transaction décentralisée ? Actuellement, la plupart des plateformes de trading NFT adoptent principalement un mode de commande, semblable à des produits exposés sur des étagères, où les acheteurs peuvent acheter si le prix leur semble approprié. Cet article expliquera comment réaliser une fonctionnalité de trading NFT décentralisé de base en écrivant des contrats intelligents et une simple page frontale.
NFT( Token non fongible ) Introduction
Un NFT est un jeton non fongible, qui suit le protocole ERC-721, chaque jeton étant unique. En général, les NFT affichent différentes images dans le portefeuille, et chaque groupe de NFT possède un identifiant unique pour les distinguer. En raison des caractéristiques des NFT, il n'est pas possible de fixer un prix comme pour les jetons ERC-20 via une courbe de prix, c'est pourquoi la méthode de transaction courante est sous forme de carnet de commandes.
Mode de négociation sur le carnet de commandes
Dans le modèle de carnet de commandes, le prix des produits est fixé par l'homme, contrairement à la méthode des teneurs de marché automatiques qui calcule le prix en fonction de la courbe des prix. Le carnet de commandes comporte généralement deux modes de transaction :
En général, le prix des ordres d'achat sera inférieur au prix des ordres de vente. Cet article présente principalement la méthode de transaction des ordres de vente.
Fonctionnalités de base de la plateforme NFT
Une plateforme de NFT de base devrait inclure les fonctionnalités suivantes :
processus de mise en ligne des produits
Le contrat doit maintenir une table de correspondance des prix des produits mis en vente par les utilisateurs.
Processus d'achat de produits
Réaliser une plateforme d'échange NFT
Cette section va créer à partir de zéro une simple plateforme NFT.
1. Créer un NFT de test
Vous pouvez utiliser Remix pour déployer rapidement un contrat NFT basé sur le protocole ERC-721 pour des tests.
2. Rédaction de contrats intelligents
Le contrat doit inclure les principales méthodes suivantes :
2.1 Le vendeur met en ligne le NFT
Flux:
La méthode de mise en ligne nécessite :
2.2 L'acheteur achète des NFT
Étapes d'exécution du contrat:
2.3 Annuler la mise en vente
Définir le champ isActive des enregistrements en vente sur false.
2.4 Retrait des frais de transaction
Retirer les frais accumulés dans le contrat à l'adresse spécifiée.
3. Développer l'interface frontale
Utilisez les outils suivants :
L'interface utilisateur comprend trois pages : Mint, Buy et Portfolio.
3.1 Connecter le portefeuille
Utiliser le composant de connexion Web3 d'Ant Design pour établir une connexion de portefeuille.
3.2 Page de Mint
Utilisé pour frapper des tests NFT, appeler le contrat en utilisant la méthode useWriteContract de wagmi.
3.3 Page de portefeuille
Afficher les NFT des utilisateurs, prendre en charge les opérations de mise en ligne et de retrait.
Processus de mise en ligne:
Retrait : appel de la méthode cancelListing
3.4 Page d'achat
Afficher tous les NFT mis en vente, supporte l'opération d'achat.
Appelez la méthode purchaseNFT lors de l'achat, en utilisant ETH pour le paiement.
Après avoir terminé les étapes ci-dessus, une plateforme NFT fonctionnelle de base est mise en place et peut être déployée sur Vercel pour des tests.