Implementar uma plataforma de negociação descentralizada simples de NFT
Para os NFTs que seguem o protocolo ERC-721, como implementar a negociação descentralizada? Atualmente, a maioria das plataformas de negociação de NFT utiliza um método de listagem para realizar transações, semelhante a produtos expostos em prateleiras, onde os compradores podem adquiri-los se acharem o preço adequado. Este artigo irá implementar uma funcionalidade básica de negociação descentralizada de NFTs através da escrita de contratos inteligentes e de uma página frontal simples.
NFT( Token não fungível ) Introdução
NFT é um token não fungível, que segue o protocolo ERC-721, onde cada token é único. Geralmente, os NFTs exibem imagens diferentes na carteira, e cada conjunto de NFTs tem um ID único para distinção. Devido às características dos NFTs, não é possível definir preços através de curvas de preço como os tokens ERC-20, portanto, a forma comum de negociação é através de um livro de ordens.
Modo de Negociação de Livro de Ordens
No modo de livro de ordens, o preço dos produtos é definido por humanos, diferindo da maneira como os market makers automáticos calculam preços com base em curvas de preços. O livro de ordens geralmente tem dois modos de negociação:
Ordem de preço: o vendedor define o preço de venda, e o comprador pode comprar se achar adequado.
Pedido de compra: O comprador emite uma ordem de compra, o vendedor pode vender se achar o preço adequado.
Em geral, o preço da ordem de compra será inferior ao da ordem de preço. Este artigo apresenta principalmente o modo de negociação da ordem de preço.
Funcionalidades básicas da plataforma NFT
Uma plataforma básica de negociação de NFT deve incluir as seguintes funcionalidades:
Colocar produtos à venda: colocar o NFT à venda pelo preço definido
Comprar produtos: comprar ao preço do NFT
Taxa da plataforma: cobrada proporcionalmente com base no preço de transação.
processo de listagem de produtos
Frontend: o usuário escolhe o NFT e define o preço, clica em listar
Contrato: o usuário autoriza a operação de contrato NFT
É necessário manter uma tabela de mapeamento de preços de produtos listados pelos usuários no contrato.
Processo de compra de produtos
Frontend: o usuário escolhe o NFT e clica para comprar
Contrato: Transferir os fundos do comprador para o vendedor, NFT para o comprador
Implementar uma plataforma de negociação NFT
Esta seção irá implementar uma plataforma simples de NFT do zero.
1. Criar NFT de teste
Pode usar o Remix para implantar rapidamente um contrato NFT do protocolo ERC-721 para testes.
2. Escrever contratos inteligentes
O contrato precisa incluir os seguintes métodos principais:
2.1 Vendedor coloca NFT à venda
Fluxo:
O usuário escolhe NFT
Definir preço
Autorizar NFT ao contrato
Chamar o método de listagem
O método de listagem requer:
Verificar a propriedade do NFT
Adicionar registo de listagem
Acionar o evento de listagem
2.2 Comprador compra NFT
Passos de execução do contrato:
Ler dados NFT
Calcular e deduzir a taxa de serviço
Transferir NFT para o comprador
Acionar evento de compra
2.3 Cancelar listagem
Defina o campo isActive do registro de listagem como false.
2.4 Taxa de retirada
Retire as taxas acumuladas no contrato para o endereço especificado.
3. Desenvolvimento da interface frontal
Utilize as seguintes ferramentas:
Ant Design Web3: conectar carteira e mostrar NFT
Wagmi: Interagir com a carteira
Next.js + Vercel: implementar o projeto
A parte frontal contém três páginas: Mint, Buy e Portfolio.
3.1 Conectar carteira
Usar o componente de conexão do Ant Design Web3 para implementar a conexão da carteira.
3.2 Página de Mint
Usado para cunhagem de teste NFT, utilizando o método useWriteContract do wagmi para chamar o contrato.
3.3 Página de Portfólio
Exibir NFT dos usuários, suportar operações de listagem e deslistagem.
Processo de listagem:
Autorizar NFT ao contrato
Chamar o método listNFT
Remover do mercado: chamar o método cancelListing
3.4 Página de Compra
Exibir todos os NFTs listados, suportando operações de compra.
Chame o método purchaseNFT ao comprar, usando ETH para pagamento.
Após concluir os passos acima, uma plataforma de negociação NFT com funcionalidades básicas foi criada, podendo ser implantada no Vercel para testes.
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
18 gostos
Recompensa
18
4
Partilhar
Comentar
0/400
TokenSleuth
· 7h atrás
Assim é, sem mais nem menos.
Ver originalResponder0
LiquidityWitch
· 07-12 12:42
Quanto é a taxa de transação? Diga-me algo concreto.
Construção de uma plataforma de negociação NFT descentralizada do zero: contratos inteligentes e implementação frontal
Implementar uma plataforma de negociação descentralizada simples de NFT
Para os NFTs que seguem o protocolo ERC-721, como implementar a negociação descentralizada? Atualmente, a maioria das plataformas de negociação de NFT utiliza um método de listagem para realizar transações, semelhante a produtos expostos em prateleiras, onde os compradores podem adquiri-los se acharem o preço adequado. Este artigo irá implementar uma funcionalidade básica de negociação descentralizada de NFTs através da escrita de contratos inteligentes e de uma página frontal simples.
NFT( Token não fungível ) Introdução
NFT é um token não fungível, que segue o protocolo ERC-721, onde cada token é único. Geralmente, os NFTs exibem imagens diferentes na carteira, e cada conjunto de NFTs tem um ID único para distinção. Devido às características dos NFTs, não é possível definir preços através de curvas de preço como os tokens ERC-20, portanto, a forma comum de negociação é através de um livro de ordens.
Modo de Negociação de Livro de Ordens
No modo de livro de ordens, o preço dos produtos é definido por humanos, diferindo da maneira como os market makers automáticos calculam preços com base em curvas de preços. O livro de ordens geralmente tem dois modos de negociação:
Em geral, o preço da ordem de compra será inferior ao da ordem de preço. Este artigo apresenta principalmente o modo de negociação da ordem de preço.
Funcionalidades básicas da plataforma NFT
Uma plataforma básica de negociação de NFT deve incluir as seguintes funcionalidades:
processo de listagem de produtos
É necessário manter uma tabela de mapeamento de preços de produtos listados pelos usuários no contrato.
Processo de compra de produtos
Implementar uma plataforma de negociação NFT
Esta seção irá implementar uma plataforma simples de NFT do zero.
1. Criar NFT de teste
Pode usar o Remix para implantar rapidamente um contrato NFT do protocolo ERC-721 para testes.
2. Escrever contratos inteligentes
O contrato precisa incluir os seguintes métodos principais:
2.1 Vendedor coloca NFT à venda
Fluxo:
O método de listagem requer:
2.2 Comprador compra NFT
Passos de execução do contrato:
2.3 Cancelar listagem
Defina o campo isActive do registro de listagem como false.
2.4 Taxa de retirada
Retire as taxas acumuladas no contrato para o endereço especificado.
3. Desenvolvimento da interface frontal
Utilize as seguintes ferramentas:
A parte frontal contém três páginas: Mint, Buy e Portfolio.
3.1 Conectar carteira
Usar o componente de conexão do Ant Design Web3 para implementar a conexão da carteira.
3.2 Página de Mint
Usado para cunhagem de teste NFT, utilizando o método useWriteContract do wagmi para chamar o contrato.
3.3 Página de Portfólio
Exibir NFT dos usuários, suportar operações de listagem e deslistagem.
Processo de listagem:
Remover do mercado: chamar o método cancelListing
3.4 Página de Compra
Exibir todos os NFTs listados, suportando operações de compra.
Chame o método purchaseNFT ao comprar, usando ETH para pagamento.
Após concluir os passos acima, uma plataforma de negociação NFT com funcionalidades básicas foi criada, podendo ser implantada no Vercel para testes.