Implementar una plataforma de intercambio NFT de Descentralización simple
¿Cómo se puede lograr el comercio descentralizado para los NFT que siguen el protocolo ERC-721? Actualmente, la mayoría de las plataformas de comercio de NFT utilizan un método de órdenes de compra, similar a cómo los productos están exhibidos en estantes; los compradores pueden comprar si consideran que el precio es adecuado. Este artículo implementará una función básica de comercio descentralizado de NFT 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, que sigue el protocolo ERC-721, y cada Token es único. Generalmente, los NFT se muestran en la billetera con diferentes imágenes, y cada grupo de NFT tiene un ID único para su distinción. Debido a las características de los NFT, no se pueden fijar precios a través de curvas de precios como los tokens ERC-20, por lo que el método de negociación común es a través de un libro de órdenes.
Modo de negociación en el libro de órdenes
En el modo de libro de órdenes, el precio de los productos es establecido por personas, a diferencia de la forma en que los creadores de mercado automáticos calculan los precios según la curva de precios. Normalmente, hay dos modos de operación en el libro de órdenes:
Orden de precio: el vendedor establece el precio de venta, y el comprador puede comprar si lo considera adecuado.
Orden de compra: el comprador emite una orden de compra, el vendedor puede vender si considera que el precio es adecuado.
En general, el precio de una orden de compra será más bajo que el de una orden de precio. Este artículo presenta principalmente el modo de transacción de órdenes 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 a un precio establecido
Comprar productos: realizar la compra según el precio de NFT
Comisión de la plataforma: se cobrará un porcentaje según el precio de la transacción.
proceso de listado de productos
Frontend: el usuario selecciona el NFT y establece el precio, hace clic en listar.
Contrato: el usuario autoriza la operación del NFT por el contrato
Se debe mantener una tabla de mapeo de precios de productos listados por el usuario en el contrato.
Proceso de compra de productos
Frontend: El usuario selecciona el NFT y hace clic en comprar
Contrato: Transferir los fondos del comprador al vendedor, el NFT al comprador
Implementar una plataforma de NFT
Esta sección implementará desde cero una simple plataforma de NFT.
1. Crear un NFT de prueba
Se puede usar Remix para desplegar rápidamente un contrato NFT del protocolo ERC-721 para pruebas.
2. Escribir contratos inteligentes
El contrato debe incluir los siguientes métodos principales:
2.1 Vendedor sube NFT
Proceso:
El usuario selecciona NFT
Establecer precio
Autorizar NFT al contrato
Llamar al método de listado
El método de listado necesita:
Verificar la propiedad del NFT
Añadir registro de listado
Activar el evento de listado
2.2 El comprador compra NFT
Pasos de ejecución del contrato:
Leer datos de NFT
Calcular y deducir la tarifa de transacción
Transferir NFT al comprador
Disparar evento de compra
2.3 Cancelar listado
Establecer el campo isActive de los registros en la plataforma como falso.
2.4 Extracción de tarifas
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollar la interfaz frontal
Utilice las siguientes herramientas:
Ant Design Web3: conectar billetera y mostrar NFT
Wagmi: interacción con la cartera
Next.js + Vercel: desplegar proyecto
El frontend incluye tres páginas: Mint, Buy y Portfolio.
3.1 Conectar billetera
Utilizar el componente de conexión de Ant Design Web3 para implementar la conexión de la cartera.
3.2 Página de Mint
Para acuñar el NFT de prueba, utiliza el método useWriteContract de wagmi para llamar al contrato.
3.3 Página de Portafolio
Mostrar NFT de usuarios, soporta operaciones de listado y deslistado.
Proceso de listado:
Autorizar NFT al contrato
Llamar al método listNFT
Retirar: llamar al método cancelListing
3.4 Página de Compra
Mostrar todos los NFT listados, soporta la operación de compra.
Al comprar, llama al método purchaseNFT y paga con ETH.
Una vez completados los pasos anteriores, se ha implementado una plataforma de comercio de NFT con funciones básicas, que se puede desplegar en Vercel para pruebas.
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.
Construir desde cero una plataforma de intercambio NFT Descentralización: contratos inteligentes y implementación de frontend
Implementar una plataforma de intercambio NFT de Descentralización simple
¿Cómo se puede lograr el comercio descentralizado para los NFT que siguen el protocolo ERC-721? Actualmente, la mayoría de las plataformas de comercio de NFT utilizan un método de órdenes de compra, similar a cómo los productos están exhibidos en estantes; los compradores pueden comprar si consideran que el precio es adecuado. Este artículo implementará una función básica de comercio descentralizado de NFT 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, que sigue el protocolo ERC-721, y cada Token es único. Generalmente, los NFT se muestran en la billetera con diferentes imágenes, y cada grupo de NFT tiene un ID único para su distinción. Debido a las características de los NFT, no se pueden fijar precios a través de curvas de precios como los tokens ERC-20, por lo que el método de negociación común es a través de un libro de órdenes.
Modo de negociación en el libro de órdenes
En el modo de libro de órdenes, el precio de los productos es establecido por personas, a diferencia de la forma en que los creadores de mercado automáticos calculan los precios según la curva de precios. Normalmente, hay dos modos de operación en el libro de órdenes:
En general, el precio de una orden de compra será más bajo que el de una orden de precio. Este artículo presenta principalmente el modo de transacción de órdenes 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
Se debe mantener una tabla de mapeo de precios de productos listados por el usuario en el contrato.
Proceso de compra de productos
Implementar una plataforma de NFT
Esta sección implementará desde cero una simple plataforma de NFT.
1. Crear un NFT de prueba
Se puede usar Remix para desplegar rápidamente un contrato NFT del protocolo ERC-721 para pruebas.
2. Escribir contratos inteligentes
El contrato debe incluir los siguientes métodos principales:
2.1 Vendedor sube NFT
Proceso:
El método de listado necesita:
2.2 El comprador compra NFT
Pasos de ejecución del contrato:
2.3 Cancelar listado
Establecer el campo isActive de los registros en la plataforma como falso.
2.4 Extracción de tarifas
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollar la interfaz frontal
Utilice las siguientes herramientas:
El frontend incluye tres páginas: Mint, Buy y Portfolio.
3.1 Conectar billetera
Utilizar el componente de conexión de Ant Design Web3 para implementar la conexión de la cartera.
3.2 Página de Mint
Para acuñar el NFT de prueba, utiliza el método useWriteContract de wagmi para llamar al contrato.
3.3 Página de Portafolio
Mostrar NFT de usuarios, soporta operaciones de listado y deslistado.
Proceso de listado:
Retirar: llamar al método cancelListing
3.4 Página de Compra
Mostrar todos los NFT listados, soporta la operación de compra.
Al comprar, llama al método purchaseNFT y paga con ETH.
Una vez completados los pasos anteriores, se ha implementado una plataforma de comercio de NFT con funciones básicas, que se puede desplegar en Vercel para pruebas.