Implementar desde cero una plataforma de intercambio NFT Descentralización
Para los NFT del protocolo ERC-721, ¿cómo se puede lograr la Descentralización en el comercio? Actualmente, la mayoría de los intercambios de NFT utilizan un método de órdenes para realizar transacciones, similar a exhibir productos en las estanterías de un supermercado, donde los compradores pueden comprar si consideran que el precio es adecuado.
Este artículo logrará el intercambio descentralizado de NFT mediante la redacción de contratos inteligentes y una simple página frontal. Es importante tener en cuenta que el contenido de este artículo es solo para referencia de aprendizaje y no es adecuado para su uso directo en un entorno de producción.
NFT(Token No Fungible)Introducción
NFT es un token no fungible que sigue el protocolo ERC-721, cada Token es único. Los NFTs generalmente muestran diferentes imágenes en la billetera, y cada grupo de NFTs tiene un ID único para diferenciarlos.
Debido a las características de los NFT, no se puede establecer un precio a través de una curva de precios como se hace con los tokens ERC-20. Por lo tanto, el método de negociación más común en la actualidad es utilizar un libro de órdenes.
Modo de comercio de libro de órdenes
En el modo de libro de órdenes, el precio de los productos es establecido por personas, a diferencia de algunos DEX que calculan el precio a través de curvas de precios. El libro de órdenes generalmente se divide en dos modos de negociación:
Orden de precios: 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.
Normalmente, el precio de una orden de compra será inferior al de una orden de precio fijo. Este artículo presenta principalmente el método de transacción de órdenes de precio fijo.
Funciones básicas de la plataforma de intercambio de NFT Descentralización
Una plataforma básica de NFT de Descentralización debería incluir las siguientes funciones:
Listar productos: poner el NFT en la plataforma a precio fijo
Compra de productos: compra según el precio del NFT
Cobro de comisiones: se cobra un porcentaje del 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 contrato 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 puede ser almacenada en un servicio centralizado para aliviar la carga del contrato, pero este artículo la mantendrá dentro del 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 usuario al vendedor, NFT al comprador
Implementación de una plataforma de intercambio NFT descentralizada
Esta sección implementará desde cero una plataforma de intercambio NFT Descentralización.
1. Crear contrato NFT
Para fines de prueba, podemos usar Remix para desplegar rápidamente un contrato NFT del protocolo ERC-721. Por supuesto, también podemos usar un contrato NFT ya preparado.
2. Redacción del contrato de la plataforma de negociación
Los contratos de la plataforma de negociación deben incluir los siguientes métodos principales:
2.1 Vendedor sube NFT
Proceso de listado:
El usuario elige NFT
Establecer precio ( en moneda estable o ETH )
Autorizar NFT al contrato
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
Proceso de compra:
Leer datos de NFT desde listings
Calcular y deducir la tarifa de transacción
Transferir NFT al comprador
Disparar evento de compra
2.3 Cancelar listado
Simplemente establezca el campo isActive correspondiente al NFT en listings como false.
2.4 Retiro de tarifas
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollo del frontend de la plataforma de trading
Herramientas principales utilizadas:
Ant Design Web3: conectar billetera, mostrar NFT tarjetas
Wagmi: interacción con la cartera
Next.js + Vercel: despliegue del proyecto
El frontend debe incluir tres páginas: Mint, Buy y Portfolio.
3.1 Conectar billetera
Utilizar el componente de conexión de Ant Design Web3 para implementar la función de conexión de billetera.
3.2 Página de Mint
Utilizado para acuñar NFT de prueba, llamando al método useWriteContract de wagmi para interactuar con el contrato.
3.3 Página de Portafolio
Gestionar los NFT de los usuarios, implementando funciones de listado y deslistado. Utilizar la API de opensea para obtener la lista de NFT de los usuarios y llamar al contrato para determinar el estado de listado del NFT.
3.4 Página de Compra
Mostrar todos los NFT en la plataforma y realizar la función de compra. Llamar al método purchaseNFT del contrato para completar la transacción.
Una vez completados los pasos anteriores, se ha implementado una plataforma de intercambio NFT descentralizada básica. Se puede desplegar en plataformas como Vercel para su acceso 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.
17 me gusta
Recompensa
17
7
Republicar
Compartir
Comentar
0/400
DeadTrades_Walking
· 07-07 14:50
Otra introducción sin conocimientos previos, agua
Ver originalesResponder0
Ser_Liquidated
· 07-07 11:44
¿Qué hay para aprender? La integración de la Billetera está casi lista.
Ver originalesResponder0
NFTArchaeologis
· 07-05 06:00
Un intento de desarrollo simple por un aficionado a la arqueología experimentado.
Ver originalesResponder0
DefiEngineerJack
· 07-05 05:57
*sigh* otro tutorial que omite la verificación formal...
Ver originalesResponder0
CommunityWorker
· 07-05 05:57
Aprender es una tontería, la práctica es la única verdad.
Guía completa para construir una plataforma de intercambio NFT descentralizada desde cero
Implementar desde cero una plataforma de intercambio NFT Descentralización
Para los NFT del protocolo ERC-721, ¿cómo se puede lograr la Descentralización en el comercio? Actualmente, la mayoría de los intercambios de NFT utilizan un método de órdenes para realizar transacciones, similar a exhibir productos en las estanterías de un supermercado, donde los compradores pueden comprar si consideran que el precio es adecuado.
Este artículo logrará el intercambio descentralizado de NFT mediante la redacción de contratos inteligentes y una simple página frontal. Es importante tener en cuenta que el contenido de este artículo es solo para referencia de aprendizaje y no es adecuado para su uso directo en un entorno de producción.
NFT(Token No Fungible)Introducción
NFT es un token no fungible que sigue el protocolo ERC-721, cada Token es único. Los NFTs generalmente muestran diferentes imágenes en la billetera, y cada grupo de NFTs tiene un ID único para diferenciarlos.
Debido a las características de los NFT, no se puede establecer un precio a través de una curva de precios como se hace con los tokens ERC-20. Por lo tanto, el método de negociación más común en la actualidad es utilizar un libro de órdenes.
Modo de comercio de libro de órdenes
En el modo de libro de órdenes, el precio de los productos es establecido por personas, a diferencia de algunos DEX que calculan el precio a través de curvas de precios. El libro de órdenes generalmente se divide en dos modos de negociación:
Orden de precios: 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.
Normalmente, el precio de una orden de compra será inferior al de una orden de precio fijo. Este artículo presenta principalmente el método de transacción de órdenes de precio fijo.
Funciones básicas de la plataforma de intercambio de NFT Descentralización
Una plataforma básica de NFT de Descentralización 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 puede ser almacenada en un servicio centralizado para aliviar la carga del contrato, pero este artículo la mantendrá dentro del contrato.
Proceso de compra de productos
Implementación de una plataforma de intercambio NFT descentralizada
Esta sección implementará desde cero una plataforma de intercambio NFT Descentralización.
1. Crear contrato NFT
Para fines de prueba, podemos usar Remix para desplegar rápidamente un contrato NFT del protocolo ERC-721. Por supuesto, también podemos usar un contrato NFT ya preparado.
2. Redacción del contrato de la plataforma de negociación
Los contratos de la plataforma de negociación deben incluir los siguientes métodos principales:
2.1 Vendedor sube NFT
Proceso de listado:
El método de listado necesita:
2.2 El comprador compra NFT
Proceso de compra:
2.3 Cancelar listado
Simplemente establezca el campo isActive correspondiente al NFT en listings como false.
2.4 Retiro de tarifas
Retirar las tarifas acumuladas en el contrato a la dirección especificada.
3. Desarrollo del frontend de la plataforma de trading
Herramientas principales utilizadas:
El frontend debe incluir tres páginas: Mint, Buy y Portfolio.
3.1 Conectar billetera
Utilizar el componente de conexión de Ant Design Web3 para implementar la función de conexión de billetera.
3.2 Página de Mint
Utilizado para acuñar NFT de prueba, llamando al método useWriteContract de wagmi para interactuar con el contrato.
3.3 Página de Portafolio
Gestionar los NFT de los usuarios, implementando funciones de listado y deslistado. Utilizar la API de opensea para obtener la lista de NFT de los usuarios y llamar al contrato para determinar el estado de listado del NFT.
3.4 Página de Compra
Mostrar todos los NFT en la plataforma y realizar la función de compra. Llamar al método purchaseNFT del contrato para completar la transacción.
Una vez completados los pasos anteriores, se ha implementado una plataforma de intercambio NFT descentralizada básica. Se puede desplegar en plataformas como Vercel para su acceso y uso.