Создание собственного токена ERC-721
11 мая 2022 г.Хотите знать, насколько популярны NFT, особенно на блокчейне Ethereum? Тогда возьмите этот кусок и немного сока. Если вы являетесь разработчиком смарт-контрактов, скорее всего, вы уже сталкивались с этой концепцией, а если нет, то это одна из концепций, с которой вы должны быть знакомы.
Чего ожидать от этой статьи?
- Эта статья расскажет вам о значении токена Erc-721.
- Чем токен Erc-721 отличается от токена Erc-20?
- Компонент токена Erc-721.
- Как можно создать свой уникальный Erc-721.
Не стесняйтесь переходить к любой теме, которая вас больше волнует. Давайте копать.
Что такое токен ERC-721?
Токен ERC-721 является стандартом для создания невзаимозаменяемых (уникальных) токенов. Это своего рода согласованный метод создания токенов, которые являются уникальными или отличными от блокчейна Ethereum. Не взаимозаменяемые токены — это взаимозаменяемые единицы ценности, такие как цифровые произведения искусства, письма и изображения. Практически все можно превратить в NFT, даже товары из реальной жизни. Я понимаю, что у нас могут быть любопытные умы, которые не занимаются разработкой блокчейна. Итак, давайте упростим ситуацию.
Токен ERC-721 — это стандарт блокчейна Ethereum для написания смарт-контрактов невзаимозаменяемых (отличных) токенов. Если вы собираетесь писать коды на блокчейне Ethereum, ERC-721 — это стандартный код функций, которые должен реализовать ваш контракт.
Чем токен ERC-721 отличается от токена ERC-20?
Erc-721 является противоположностью токена Erc-20. В то время как токен Erc-20 служит стандартным кодом для реализации взаимозаменяемых токенов (монет), токен Erc-721 является стандартом для невзаимозаменяемых токенов (NFT), таких как цифровое искусство, ключ доступа, лотерея, твиты и так далее.
Содержимое токена Erc-721
Ниже приведены ключевые слова функций/методов, которые должны содержаться в вашем коде Erc 721, и их значение.
- balanceOf (адрес владелец): эта функция в основном проверяет количество NFT соответствующего владельца.
```javascript
функция balanceOf(address _owner) возвращает внешнее представление (uint256);
ownerOf(unit 256 tokenId): Эта функция сообщает вам адрес владельца этого конкретного токена путем проверки tokenId, поскольку все NFT уникальны.
```javascript
функция ownerOf(uint256 _tokenId) возвращает внешний вид (адрес);
- **setransferFrom(address from address to unit(256) tokenId, bytes *data): ***Это функциональное ключевое слово полезно для передачи права собственности на токен. Если адрес получателя также является контрактом, функция onERC721Recieved будет вызываться, чтобы убедиться, что этот контакт может принимать токены.
- **(адрес от, адрес to unit tokenId):**То же, что и предыдущая функция, за исключением того, что при вызове данные устанавливаются в пустую строку. Solidity поддерживает использование двух методов (функций) с одинаковыми именами, но разными параметрами, как здесь.
- transferFrom: эта функция передает право собственности на токены по адресам. Одним из недостатков использования этой функции является то, что она не проверяет, способен ли получатель получить указанные токены, и если она вызывается по недопустимому адресу, токены будут потеряны навсегда. Чтобы этого избежать, лучше всего использовать функцию safeTransferFrom.
```javascript
функция transferFrom(address_from, address_to, uint256 _tokenId) внешний платеж;
функция safeTransferFrom(адрес _от, адрес _к, uint256 _tokenId, байты данных) внешний платеж;
- approve(address approved, unit tokenId): Это позволяет кому-то, кроме владельца, передавать токены. Он отличается от утверждения в Erc-20 тем, что в параметре указывается tokenId, а не сумма.
```javascript
функция одобряет(адрес _approved, uint256 _tokenId) внешний платеж;
- setApprovalForAll(адрес, оператор, логическое значение): Эта функция подтверждает передачу всех токенов от лица, вызвавшего эту функцию, на адрес нового оператора с использованием логического значения (true/false ).
функция setApprovalForAll (адрес _оператор, логическое значение _approved) внешняя;
- получить одобрение (uint256 tokenId): сообщает утвержденный адрес токена.
```javascript
функция getApproved(uint256 _tokenId) возвращает внешний вид (адрес);
Вы можете включить метатег, который будет содержать такую информацию, как имя токена, описание и изображение.
```javascript
"название": {
"тип": "строка",
"description": "Идентифицирует актив, который представляет этот NFT"
"описание": {
"тип": "строка",
"description": "Описывает этот NFT "
"изображение": {
"тип": "строка",
"description": "URI, указывающий на ресурс с mime-типом image/*, представляющий актив, который представляет этот NFT."
Как создать свой собственный токен Erc-721.
Вы можете просто импортировать интерфейс из Openzepellin, чтобы создать свой.
OpenZeppelin библиотека создала образцы контрактов, которые можно использовать в качестве основы для ваших собственных токенов Erc-721 и Erc-20, вы должны убедиться, что и используйте его, чтобы создать свой.
Не стесняйтесь добавлять другие функции, которые вы хотите, чтобы ваш токен ERC-721 имел.
Чтобы создать невзаимозаменяемый токен в блокчейне Ethereum, токен Erc-721 является стандартом сообщества для любого NFT, размещенного там. Это аббревиатура от Ethereum Request for Comment. Возможно, будет обновлена функциональность этого существующего стандарта, но до тех пор мы застряли на ERC-721.
Я что-то написал на токен ERC-20. Вы можете узнать об этом здесь.
Также опубликовано здесь
Оригинал