web3.js ENS
web3.js ENS

Оригинальный текст здесь[1]

В этом уроке мы рассмотрим, как использовать пакет web3.js ENS (служба имен Ethereum). Служба имен Ethereum (ENS) — это децентрализованная система доменных имен, построенная на блокчейне Ethereum. Он служит распределенной, безопасной, удобочитаемой системой именования, предназначенной для сопоставления адресов Ethereum, смарт-контрактов и различных других сервисов с легко понятными именами.

Установите web3.js

первый,Необходимо использовать в нашем проектеnpmУстановитьv4версияweb3.js:

Язык кода:javascript
копировать
$ npm i web3

Настройте web3 и ENS

Теперь мы настраиваем web3.js и ENS в файле TypeScript:

Язык кода:javascript
копировать
import Web3 from 'web3';

// Assuming you have a provider, replace 'http://localhost:8545' with your Web3 provider
const web3 = new Web3('http://localhost:8545');

// You can use ENS with web3 object:
const ens = await web3.eth.ens.getAddress('alice.eth');

Установите web3.js ENS

Чтобы использовать пакет ENS напрямую, сначала необходимо установить пакет ENS и импортировать его:

Язык кода:javascript
копировать
$ npm install web3-eth-ens
Язык кода:javascript
копировать
import { ENS } from 'web3-eth-ens';

const ens = new ENS(undefined,'https://127.0.0.1:4545');

console.log(await ens.getAddress('vitalik.eth'));

пример ЭНС

getAddress

Функция getAddress получает адрес Ethereum, связанный с данным именем ENS. Он разрешает адрес, запрашивая у преобразователя ENS предоставленное имя ENS, и возвращает разрешенный адрес Ethereum.

Язык кода:javascript
копировать
const address = await web3.eth.ens.getAddress('ethereum.eth');
console.log(address);

getContenthash

Функция getContenthash извлекает хэш контента, связанный с предоставленным именем ENS. Он связывается с анализатором ENS для получения хеша контента и возвращает проанализированный хэш контента.

Язык кода:javascript
копировать
const hash = await web3.eth.ens.getContenthash('ethereum.eth');
console.log(hash);

getOwner

Функция getOwner получает владельца указанного имени ENS. Он запрашивает реестр ENS, чтобы узнать владельца имени ENS, и возвращает адрес Ethereum владельца.

Язык кода:javascript
копировать
const owner = await web3.eth.ens.getOwner('ethereum.eth');
console.log(owner);

getPubKey

Функция getPubKey использует анализатор ENS для получения открытых ключей x и y, связанных с предоставленным именем ENS.

Язык кода:javascript
копировать
const key = await web3.eth.ens.getPubkey('xyz.eth');
console.log(key);

getResplver

Функция getResolver извлекает преобразователь для данного имени ENS.

Язык кода:javascript
копировать
const resolver = await web3.eth.ens.getResolver('xyz.eth');
console.log(resolver.options.address);

getTTL

Функция getTTL получает значение времени жизни (TTL), связанное с указанным именем ENS.

Язык кода:javascript
копировать
const result = await web3.eth.ens.recordExists('ethereum.eth');
console.log(result);

recordExists

Функция RecordExists проверяет, существует ли запись с данным именем ENS.

Язык кода:javascript
копировать
const result = await web3.eth.ens.recordExists('ethereum.eth');
console.log(result);

в заключение

В этом руководстве мы рассмотрели, как использовать пакет ENS web3.js для взаимодействия со службой имен Ethereum. Теперь вы сможете выполнять различные операции, связанные с ENS, с помощью web3.js версии 4. Для получения более подробной информации посетите раздел документации web3.js ENS[2].

Отказ от ответственности: эта работа распространяется под лицензией Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)[3]. При использовании указывайте источник. Автор: мэнбин[4] блог: мэнбин[5] Github: mengbin92[6] cnblogs: Непреднамеренно полюбила воду[7] Сообщество разработчиков облачных технологий Tencent: Мюнстер[8]

References

[1] здесь: https://docs.web3js.org/guides/ens/ [2] документ: https://docs.web3js.org/libdocs/ENS [3] С указанием авторства-Некоммерческая-ShareAlike 4.0 интернациональность (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh [4] mengbin: mengbin1992@outlook.com [5] mengbin: https://mengbin.top [6] mengbin92: https://mengbin92.github.io/ [7] Влюбляюсь в воду нечаянно: https://www.cnblogs.com/lianshuiwuyi/ [8] Мюнстер: https://cloud.tencent.com/developer/user/6649301

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.