Оригинальный текст здесь[1]
В этом уроке мы рассмотрим, как использовать пакет web3.js ENS (служба имен Ethereum). Служба имен Ethereum (ENS) — это децентрализованная система доменных имен, построенная на блокчейне Ethereum. Он служит распределенной, безопасной, удобочитаемой системой именования, предназначенной для сопоставления адресов Ethereum, смарт-контрактов и различных других сервисов с легко понятными именами.
первый,Необходимо использовать в нашем проектеnpm
Установитьv4версияweb3.js:
$ npm i web3
Теперь мы настраиваем web3.js и ENS в файле TypeScript:
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');
Чтобы использовать пакет ENS напрямую, сначала необходимо установить пакет ENS и импортировать его:
$ npm install web3-eth-ens
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 получает адрес Ethereum, связанный с данным именем ENS. Он разрешает адрес, запрашивая у преобразователя ENS предоставленное имя ENS, и возвращает разрешенный адрес Ethereum.
const address = await web3.eth.ens.getAddress('ethereum.eth');
console.log(address);
Функция getContenthash извлекает хэш контента, связанный с предоставленным именем ENS. Он связывается с анализатором ENS для получения хеша контента и возвращает проанализированный хэш контента.
const hash = await web3.eth.ens.getContenthash('ethereum.eth');
console.log(hash);
Функция getOwner получает владельца указанного имени ENS. Он запрашивает реестр ENS, чтобы узнать владельца имени ENS, и возвращает адрес Ethereum владельца.
const owner = await web3.eth.ens.getOwner('ethereum.eth');
console.log(owner);
Функция getPubKey использует анализатор ENS для получения открытых ключей x и y, связанных с предоставленным именем ENS.
const key = await web3.eth.ens.getPubkey('xyz.eth');
console.log(key);
Функция getResolver извлекает преобразователь для данного имени ENS.
const resolver = await web3.eth.ens.getResolver('xyz.eth');
console.log(resolver.options.address);
Функция getTTL получает значение времени жизни (TTL), связанное с указанным именем ENS.
const result = await web3.eth.ens.recordExists('ethereum.eth');
console.log(result);
Функция RecordExists проверяет, существует ли запись с данным именем ENS.
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]
[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