С нуля построить платформу для децентрализованной торговли NFT
Для NFT по протоколу ERC-721, как реализовать децентрализованную торговлю? В настоящее время большинство популярных NFT торговых площадок используют способ размещения заказов для торговли, аналогично тому, как товары выставлены на полках супермаркета, покупатели могут непосредственно покупать, если цена их устраивает. В этой статье будет реализована базовая децентрализованная торговая платформа NFT с помощью написания смарт-контракта и простого фронтенд-страницы.
NFT — это невзаимозаменяемый токен, каждый токен уникален и соответствует протоколу ERC-721. Обычно каждый NFT отображает разные изображения в кошельке, и каждая группа NFT имеет уникальный идентификатор для различия.
Из-за особенностей NFT невозможно установить цену, как это делается с токенами ERC-20, через ценовую кривую. Поэтому в настоящее время наиболее распространенный способ торговли - это форма книги заказов.
Модель торговли на ордерной книге
Модель книги заказов, проще говоря, представляет собой установление цен на товары человеком, в отличие от способа расчета цен по кривой цен. Обычно в книге заказов есть два типа торговых режимов:
Ценовое предложение: Продавец устанавливает цену продажи, и покупатель может сразу купить, если считает ее подходящей.
Заказ на покупку: покупатель отправляет заказ на покупку, продавец, если считает цену подходящей, может продать.
Как правило, цена на заявки на покупку ниже цены на ордера на продажу. В этой статье в основном рассматривается модель ордеров на продажу.
Базовая платформа для торговли NFT должна включать в себя следующие функции:
Выставление товара: выставить NFT по установленной цене
Покупка товара: покупка по цене NFT
Платформа комиссии: взимаются комиссии пропорционально цене сделки
Процесс размещения товара
Фронтенд: пользователь выбирает NFT, устанавливает цену и нажимает на размещение
Контракт: Пользователь авторизует контракт для операций с NFT
В контракте необходимо поддерживать таблицу соответствия цен на товары, выставленные пользователями. Эти данные также могут храниться в централизованном сервисе для снижения нагрузки на контракт, в данной статье они будут непосредственно храниться в контракте.
Процесс покупки товаров
Фронтенд: Пользователь выбирает желаемый NFT и нажимает кнопку покупки.
Контракт: передача средств покупателя продавцу, NFT передается покупателю
Реализация платформы NFT
1. Создать тестовый NFT
Можно быстро развернуть контракт NFT по протоколу ERC-721 для тестирования с помощью Remix.
Таким образом, базовая платформа NFT для децентрализованной торговли завершена. Проект можно развернуть на Vercel для тестирования и использования.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
С 0 до 1 создание полного процесса NFT Децентрализация платформы
С нуля построить платформу для децентрализованной торговли NFT
Для NFT по протоколу ERC-721, как реализовать децентрализованную торговлю? В настоящее время большинство популярных NFT торговых площадок используют способ размещения заказов для торговли, аналогично тому, как товары выставлены на полках супермаркета, покупатели могут непосредственно покупать, если цена их устраивает. В этой статье будет реализована базовая децентрализованная торговая платформа NFT с помощью написания смарт-контракта и простого фронтенд-страницы.
! Начальная серия Web3: реализация NFT DEX с нуля
NFT(Невзаимозаменяемый токен)Описание
NFT — это невзаимозаменяемый токен, каждый токен уникален и соответствует протоколу ERC-721. Обычно каждый NFT отображает разные изображения в кошельке, и каждая группа NFT имеет уникальный идентификатор для различия.
Из-за особенностей NFT невозможно установить цену, как это делается с токенами ERC-20, через ценовую кривую. Поэтому в настоящее время наиболее распространенный способ торговли - это форма книги заказов.
Модель торговли на ордерной книге
Модель книги заказов, проще говоря, представляет собой установление цен на товары человеком, в отличие от способа расчета цен по кривой цен. Обычно в книге заказов есть два типа торговых режимов:
Ценовое предложение: Продавец устанавливает цену продажи, и покупатель может сразу купить, если считает ее подходящей.
Заказ на покупку: покупатель отправляет заказ на покупку, продавец, если считает цену подходящей, может продать.
Как правило, цена на заявки на покупку ниже цены на ордера на продажу. В этой статье в основном рассматривается модель ордеров на продажу.
! Начальная серия Web3: реализация NFT DEX с нуля
Основные функции платформы NFT
Базовая платформа для торговли NFT должна включать в себя следующие функции:
Процесс размещения товара
В контракте необходимо поддерживать таблицу соответствия цен на товары, выставленные пользователями. Эти данные также могут храниться в централизованном сервисе для снижения нагрузки на контракт, в данной статье они будут непосредственно храниться в контракте.
Процесс покупки товаров
Реализация платформы NFT
1. Создать тестовый NFT
Можно быстро развернуть контракт NFT по протоколу ERC-721 для тестирования с помощью Remix.
! Начальная серия Web3: реализация NFT DEX с нуля
2. Написание смарт-контрактов
Контракт должен содержать следующие основные функции:
2.1 Продавец выставляет NFT
Процесс:
Способ размещения требует:
2.2 Покупка NFT покупателем
Процесс:
2.3 Отменить листинг
Установите поле isActive соответствующего NFT в listings на false.
2.4 Извлечение комиссии
Извлеките накопленные комиссии из контракта на указанный адрес.
3. Разработка интерфейса
Используйте следующие инструменты:
Фронтенд включает три основных страницы:
3.1 Подключение кошелька
Используйте компонент подключения Ant Design Web3.
! Начальная серия Web3: реализация NFT DEX с нуля
3.2 Страница Mint
Используйте метод useWriteContract от wagmi для вызова метода mint контракта NFT.
! Начальная серия Web3: реализация NFT DEX с нуля
3.3 Страница Портфолио
Показать пользователю NFT, поддержка операций по размещению и снятию.
При размещении вызывайте метод listNFT, а для отмены вызывайте метод cancelListing. Перед размещением необходимо авторизовать NFT для контракта.
3.4 Страница покупки
Показать все выставленные на продажу NFT, вызвав метод purchaseNFT для покупки.
! Серия для новичков Web3: внедрение NFT DEX с нуля
Таким образом, базовая платформа NFT для децентрализованной торговли завершена. Проект можно развернуть на Vercel для тестирования и использования.