Перейти к основному содержанию

Начало разработки Ethereum

JavaScript
ethers.js
узлы
запросы
Alchemy
Beginner
Elan Halpern
30 октября 2020 г.
4 минута прочтения

Логотипы Ethereum и Alchemy

Это руководство для начинающих по разработке на Ethereum. В этом руководстве мы будем использовать Alchemyopens in a new tab, ведущую платформу для разработчиков блокчейна, которая обслуживает миллионы пользователей из 70 % лучших блокчейн-приложений, включая Maker, 0x, MyEtherWallet, Dharma и Kyber. Alchemy предоставит нам доступ к конечной точке API в сети Ethereum, чтобы мы могли читать и записывать транзакции.

Мы проведем вас от регистрации в Alchemy до написания вашего первого скрипта web3! Опыт разработки на блокчейне не требуется!

1. Зарегистрируйте бесплатный аккаунт Alchemy

Создать аккаунт в Alchemy легко, зарегистрируйтесь бесплатно здесьopens in a new tab.

2. Создайте приложение Alchemy

Чтобы взаимодействовать с сетью Ethereum и использовать продукты Alchemy, вам понадобится ключ API для аутентификации ваших запросов.

Вы можете создать ключи API на панели управленияopens in a new tab. Чтобы создать новый ключ, перейдите в раздел «Create App» (Создать приложение), как показано ниже:

Отдельная благодарность ShapeShiftopens in a new tab за то, что позволили нам показать их панель управления!

Панель управления Alchemy

Заполните данные в разделе «Create App» (Создать приложение), чтобы получить новый ключ. Здесь вы также можете увидеть приложения, которые вы создали ранее, и те, которые создала ваша команда. Получите существующие ключи, нажав «View Key» (Просмотреть ключ) для любого приложения.

Снимок экрана создания приложения в Alchemy

Вы также можете получить существующие ключи API, наведя курсор на «Apps» (Приложения) и выбрав одно из них. Здесь вы можете выбрать «View Key» (Просмотреть ключ), а также «Edit App» (Редактировать приложение), чтобы внести определенные домены в белый список, просмотреть несколько инструментов для разработчиков и аналитику.

Gif-анимация, показывающая, как пользователь может получить ключи API

3. Сделайте запрос из командной строки

Взаимодействуйте с блокчейном Ethereum через Alchemy, используя JSON-RPC и curl.

Для запросов вручную мы рекомендуем взаимодействовать с JSON-RPC через POST-запросы. Просто передайте заголовок Content-Type: application/json и ваш запрос в качестве тела POST-запроса со следующими полями:

  • jsonrpc: версия JSON-RPC — в настоящее время поддерживается только 2.0.
  • method: метод ETH API. См. справочник по API.opens in a new tab
  • params: список параметров для передачи в метод.
  • id: идентификатор вашего запроса. Он будет возвращен в ответе, чтобы вы могли отслеживать, к какому запросу относится ответ.

Вот пример, который можно запустить из командной строки, чтобы получить текущую цену на газ:

curl https://eth-mainnet.alchemyapi.io/v2/demo \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}'

ПРИМЕЧАНИЕ. Замените https://eth-mainnet.alchemyapi.io/v2/demoopens in a new tab на свой собственный ключ API https://eth-mainnet.alchemyapi.io/v2/**your-api-key.

Результаты:

1{ "id": 73,"jsonrpc": "2.0","result": "0x09184e72a000" // 10000000000000 }

4. Настройте свой клиент Web3

Если у вас уже есть клиент, измените URL-адрес текущего провайдера узла на URL-адрес Alchemy с вашим ключом API: “https://eth-mainnet.alchemyapi.io/v2/your-api-key"

ПРИМЕЧАНИЕ: Приведенные ниже скрипты необходимо запускать в контексте node или сохранять в файл, а не запускать из командной строки. Если у вас еще не установлены Node или npm, ознакомьтесь с этим кратким руководством по настройке для Macopens in a new tab.

Существует множество библиотек Web3opens in a new tab, которые можно интегрировать с Alchemy, однако мы рекомендуем использовать Alchemy Web3opens in a new tab, прямую замену web3.js, созданную и настроенную для бесперебойной работы с Alchemy. Это дает множество преимуществ, таких как автоматические повторные попытки и надежная поддержка WebSocket.

Чтобы установить AlchemyWeb3.js, перейдите в каталог вашего проекта и выполните:

С помощью Yarn:

1yarn add @alch/alchemy-web3

С помощью NPM:

1npm install @alch/alchemy-web3

Чтобы взаимодействовать с инфраструктурой узлов Alchemy, запустите в NodeJS или добавьте это в файл JavaScript:

1const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
2const web3 = createAlchemyWeb3(
3 "https://eth-mainnet.alchemyapi.io/v2/your-api-key"
4)

5. Напишите свой первый скрипт Web3!

Теперь, чтобы немного попрактиковаться в программировании на web3, мы напишем простой скрипт, который выводит номер последнего блока из основной сети Ethereum.

1. Если вы еще этого не сделали, создайте в своем терминале новый каталог проекта и перейдите в него с помощью cd:

1mkdir web3-example
2cd web3-example

2. Установите зависимость Alchemy web3 (или любую другую web3) в свой проект, если вы еще этого не сделали:

1npm install @alch/alchemy-web3

3. Создайте файл с именем index.js и добавьте в него следующее содержимое:

В конечном итоге вы должны заменить demo своим ключом HTTP API от Alchemy.

1async function main() {
2 const { createAlchemyWeb3 } = require("@alch/alchemy-web3")
3 const web3 = createAlchemyWeb3("https://eth-mainnet.alchemyapi.io/v2/demo")
4 const blockNumber = await web3.eth.getBlockNumber()
5 console.log("Последний номер блока: " + blockNumber)
6}
7main()

Не знакомы с асинхронностью? Ознакомьтесь с этой статьей на Mediumopens in a new tab.

4. Запустите его в терминале с помощью node**

1node index.js

5. Теперь вы должны увидеть вывод последнего номера блока в вашей консоли!**

1Последний номер блока: 11043912

Ура! Поздравляем! Вы только что написали свой первый скрипт web3 с помощью Alchemy 🎉

Не знаете, что делать дальше? Попробуйте развернуть свой первый смарт-контракт и попрактиковаться в программировании на Solidity с помощью нашего руководства по созданию смарт-контракта Hello Worldopens in a new tab или проверьте свои знания о панели управления с помощью демо-приложения Dashboardopens in a new tab!

Зарегистрируйтесь в Alchemy бесплатноopens in a new tab, ознакомьтесь с нашей документациейopens in a new tab, а чтобы быть в курсе последних новостей, подписывайтесь на нас в Twitteropens in a new tab.

Последнее обновление страницы: 25 сентября 2025 г.

Было ли это руководство полезным?