Desde cero, construir una plataforma de intercambio NFT Descentralización
¿Cómo se puede lograr la Descentralización en el comercio de NFTs bajo el protocolo ERC-721? Actualmente, la mayoría de los intercambios de NFT utilizan un método de órdenes, similar a colocar productos en las estanterías de un supermercado, donde los compradores pueden comprar directamente si consideran que el precio es adecuado. Este artículo implementará una plataforma básica de comercio de NFT Descentralización mediante la redacción de contratos inteligentes y una sencilla página de frontend.
NFT(Token No Fungible)Introducción
NFT es un token no fungible, cada Token es único y sigue el protocolo ERC-721. En general, cada NFT mostrará diferentes imágenes en la cartera y cada grupo de NFT tiene un ID único para diferenciarlos.
Debido a las características de NFT, no se puede establecer un precio a través de una curva de precios como los tokens ERC-20. Por lo tanto, el método de negociación más común actualmente es a través de un libro de órdenes.
Modo de negociación en el libro de órdenes
El modo de libro de órdenes, en pocas palabras, es aquel en el que los precios de los productos son establecidos por personas, a diferencia del método que calcula los precios a través de curvas de precios. El libro de órdenes generalmente tiene dos modos de operación:
Orden de precio: el vendedor establece el precio de venta, y el comprador puede comprar directamente si lo considera adecuado.
Orden de compra: el comprador emite una orden de compra, y el vendedor puede vender si considera que el precio es adecuado.
En general, el precio de una orden de compra será inferior al de una orden de precio. Este artículo presenta principalmente el modo de orden de precio.
Funciones básicas de la plataforma NFT
Una plataforma básica de NFT debería incluir las siguientes funciones:
Listar productos: poner el NFT a la venta según el precio establecido
Comprar productos: realizar la compra según la fijación de precios del NFT
Comisión de la plataforma: se cobrará una comisión proporcional al precio de la transacción.
Proceso de listado de productos
Frontend: el usuario selecciona el NFT y establece un precio, hace clic en listar
Contrato: el usuario autoriza la operación del NFT
Es necesario mantener una tabla de mapeo de precios de productos listados por los usuarios en el contrato. Esta parte de los datos también se puede almacenar en un servicio centralizado para aliviar la carga del contrato, en este artículo se almacenará directamente en el contrato.
Proceso de compra de productos
Frontend: El usuario selecciona el NFT que desea comprar y hace clic en comprar
Contrato: Transferir los fondos del comprador al vendedor, NFT al comprador
Implementar una plataforma de NFT
1. Crear NFT de prueba
Se puede desplegar rápidamente un contrato NFT del protocolo ERC-721 para pruebas a través de Remix.
2. Escribir contratos inteligentes
El contrato debe incluir las siguientes funciones principales:
2.1 Vendedor sube NFT
Flujo:
El usuario selecciona NFT
Establecer el precio ( en USDT, USDC o ETH )
Autorizar NFT al contrato
Llamar al método de listado
El método de listado requiere:
Verificar la propiedad del NFT
Añadir registro de listado
Activar el evento de listado
2.2 Comprador compra NFT
Flujo:
Leer datos de NFT desde listings
Calcular y deducir la tarifa
Transferir NFT al comprador
Disparar evento de compra
2.3 Cancelar la lista
Solo tienes que establecer el campo isActive correspondiente al NFT en listings como false.
2.4 Retiro de comisiones
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollo de la interfaz frontal
Utilice las siguientes herramientas:
Ant Design Web3: conectar billetera y mostrar NFT
Wagmi: Interactuar con la cartera
Next.js + Vercel: despliegue del proyecto
La interfaz incluye tres páginas principales:
Mint: utilizado para acuñar NFT de prueba
Comprar: mercado de NFT, se pueden comprar NFT
Portafolio: gestionar los NFT de los usuarios, soportar la subida y bajada.
3.1 Conectar billetera
Implementar con el componente de conexión de Ant Design Web3.
3.2 Página de Mint
Utiliza el método useWriteContract de wagmi para llamar al método mint del contrato NFT.
3.3 Página de Portafolio
Mostrar NFT de usuarios, soporta operaciones de listado y deslistado.
Al listar, se llama al método listNFT, y al cancelar, se llama al método cancelListing. Antes de listar, se debe autorizar el NFT al contrato.
3.4 Página de Compra
Muestra todos los NFT listados, llama al método purchaseNFT para realizar la compra.
Hasta aquí, se ha completado una plataforma básica de intercambio descentralizado de NFT. Se puede desplegar el proyecto en Vercel para realizar pruebas y uso.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
16 me gusta
Recompensa
16
3
Compartir
Comentar
0/400
GasSavingMaster
· 07-22 00:40
Esto sobre las tarifas se explica bastante bien.
Ver originalesResponder0
MetaLord420
· 07-22 00:37
Es un tutorial sincero, con perspectivas valiosas.
Desde 0 hasta 1, el proceso completo para construir una plataforma de intercambio NFT Descentralización.
Desde cero, construir una plataforma de intercambio NFT Descentralización
¿Cómo se puede lograr la Descentralización en el comercio de NFTs bajo el protocolo ERC-721? Actualmente, la mayoría de los intercambios de NFT utilizan un método de órdenes, similar a colocar productos en las estanterías de un supermercado, donde los compradores pueden comprar directamente si consideran que el precio es adecuado. Este artículo implementará una plataforma básica de comercio de NFT Descentralización mediante la redacción de contratos inteligentes y una sencilla página de frontend.
NFT(Token No Fungible)Introducción
NFT es un token no fungible, cada Token es único y sigue el protocolo ERC-721. En general, cada NFT mostrará diferentes imágenes en la cartera y cada grupo de NFT tiene un ID único para diferenciarlos.
Debido a las características de NFT, no se puede establecer un precio a través de una curva de precios como los tokens ERC-20. Por lo tanto, el método de negociación más común actualmente es a través de un libro de órdenes.
Modo de negociación en el libro de órdenes
El modo de libro de órdenes, en pocas palabras, es aquel en el que los precios de los productos son establecidos por personas, a diferencia del método que calcula los precios a través de curvas de precios. El libro de órdenes generalmente tiene dos modos de operación:
Orden de precio: el vendedor establece el precio de venta, y el comprador puede comprar directamente si lo considera adecuado.
Orden de compra: el comprador emite una orden de compra, y el vendedor puede vender si considera que el precio es adecuado.
En general, el precio de una orden de compra será inferior al de una orden de precio. Este artículo presenta principalmente el modo de orden de precio.
Funciones básicas de la plataforma NFT
Una plataforma básica de NFT debería incluir las siguientes funciones:
Proceso de listado de productos
Es necesario mantener una tabla de mapeo de precios de productos listados por los usuarios en el contrato. Esta parte de los datos también se puede almacenar en un servicio centralizado para aliviar la carga del contrato, en este artículo se almacenará directamente en el contrato.
Proceso de compra de productos
Implementar una plataforma de NFT
1. Crear NFT de prueba
Se puede desplegar rápidamente un contrato NFT del protocolo ERC-721 para pruebas a través de Remix.
2. Escribir contratos inteligentes
El contrato debe incluir las siguientes funciones principales:
2.1 Vendedor sube NFT
Flujo:
El método de listado requiere:
2.2 Comprador compra NFT
Flujo:
2.3 Cancelar la lista
Solo tienes que establecer el campo isActive correspondiente al NFT en listings como false.
2.4 Retiro de comisiones
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollo de la interfaz frontal
Utilice las siguientes herramientas:
La interfaz incluye tres páginas principales:
3.1 Conectar billetera
Implementar con el componente de conexión de Ant Design Web3.
3.2 Página de Mint
Utiliza el método useWriteContract de wagmi para llamar al método mint del contrato NFT.
3.3 Página de Portafolio
Mostrar NFT de usuarios, soporta operaciones de listado y deslistado.
Al listar, se llama al método listNFT, y al cancelar, se llama al método cancelListing. Antes de listar, se debe autorizar el NFT al contrato.
3.4 Página de Compra
Muestra todos los NFT listados, llama al método purchaseNFT para realizar la compra.
Hasta aquí, se ha completado una plataforma básica de intercambio descentralizado de NFT. Se puede desplegar el proyecto en Vercel para realizar pruebas y uso.