Это руководство предназначено только для образовательных целей, я не несу ответственности за любые убытки, ущерб или другие обязательства, которые могут возникнуть в результате использования любой информации/кода, представленных здесь (или где-либо еще).
Я ни при каких обстоятельствах не являюсь профессионалом Javascript (или JS Ninja/Expert)!
Код не готов к работе! (только в учебных целях)
В этом руководстве я покажу вам, как преобразовать адрес ETH в адрес MAN (Mainnet).
Языком, выбранным для этого руководства, будет JavaScript с Node.js в качестве среды выполнения. (в качестве предварительного условия вам необходимо установить Node.js, https://nodejs.org/en/, обязательно также установите npm, редактор типа https://code.visualstudio.com/ и создайте папку, в которой у нас будет проект, где-нибудь)
Давайте сначала начнем с открытия командной строки.
Чтобы открыть терминал, вы можете ввести cmd
в начальную строку поиска, начальная панель поиска находится в левом нижнем углу экрана (если темы не применялись).
После открытия терминала переходим в созданную нами папку (в моем случае AddressCoverter): cd AddressConverter
Теперь мы собираемся создать новый пакет npm, запустив npm init
в командной строке (указав на папку по вашему выбору, я буду использовать свою папку на рабочем столе для этого теста с именем AddressConverter) и предоставить правильную информацию (или пропустить это, нажав Enter и написав yes в конце «настройки» (это нормально?), он должен выглядеть примерно так:
Кроме того, выполните следующие команды в cmd, который вы открыли в расположении пакета (мы устанавливаем некоторые пакеты, которые будем использовать для нашего мини-приложения):
npm install buffer
npm install polycrc
npm install bs58
Теперь откройте Visual Studio Code в этой папке, создайте файл с именем index.js, установите все необходимые расширения (js lint или все, что предлагает Visual Studio Code для node.js/js) и давайте начнем программировать.
Начнем с включения модулей, которые мы ранее установили:
Теперь давайте создадим функцию, которая проверяет, является ли предоставленный нами адрес ДЕЙСТВИТЕЛЬНЫМ (имеет допустимые символы, мы будем использовать для этого регулярное выражение, убедитесь, что предоставленный адрес начинается с 0x, после чего за ним следует строка из 40 шестнадцатеричных символов: a…f , A…F, 0…9, модификатор i используется для выполнения сравнения без учета регистра):
Теперь мы вызываем другую функцию с именем getConvertedManAddress, которая преобразует ее в формат Matrix AI Network Mainnet (Base58, исключаемые символы: 0, O, I, l):
Вся программа (https://github.com/CognitiveProcessing/Matrix-AI-Network-Code-Snippets/blob/main/js/ethToManAddressConverter.js):
Для `0x5Fd71CF221e450E619638338bD21871229835261` он должен вернуть `MAN.2LSfiVSmKx8PD9YUbdVGuHEhDY3Jz`
Для `0x5Fd71CF221e450E619638338bD21871229835261z` должно быть возвращено `0x5Fd71CF221e450E619638338bD21871229835261z не является действительным адресом ETH`
Для получения дополнительной документации по используемым пакетам вы можете проверить: https://www.npmjs.com/package/bs58
https://www.npmjs.com/package/buffer
https://www.npmjs.com/package/polycrc
Также посетите официальный портал разработчиков Matrix AI Network: dev.matrix.io.