Привет всем и добро пожаловать обратно в наши запланированные программы. После изучения основ и различных Типов и функций мы сосредоточимся на настройке javascript SDK æternity.

Первое, что вам нужно сделать, это убедиться, что у вас установлена ​​последняя версия SDK. Затем получите ключ учетной записи æternity, чтобы получить Æ для использования в тестовой сети. Проще всего это сделать с помощью aeternity CLI.

Не забывайте никогда не использовать какие-либо общедоступные инструменты из Интернета для создания важных вещей, например, для обработки основной сети Æ или взаимодействия с важными контрактами.

После установки просто запустите «æcli account generate 2» и нажмите «y», чтобы сгенерировать две пары ключей. После этого вы можете перейти к крану тестовой сети æternity, ввести открытый ключ адреса кошелька, который вы только что сгенерировали, и получить пять тестовых Æ, доставленных на ваши учетные записи. (это может занять несколько секунд, то есть столько времени, сколько требуется для добычи блока).

Чтобы посмотреть интересное информативное видео по этому вопросу, посмотрите вот это:

Полный пример кода находится здесь.

SDK поддерживает варианты, которые позволяют уменьшить размер пакета. Однако, если вы хотите, чтобы все было просто, выберите универсальный вкус.

Теперь вы определяете свои переменные, которые содержат ваши открытые и закрытые ключи. Они используются для создания экземпляров так называемых учетных записей памяти внутри приложений. Эти учетные записи живут только в памяти и будут использоваться для операций с блокчейном. После настройки SDK вы, конечно же, сможете добавить дополнительные учетные записи на ходу позже.

Напоминание PSA: Никогда не программируйте закрытые ключи в веб-приложении.

Хорошо, теперь вернемся к этому.

Определение асинхронной функции позволит javascript использовать отсутствующий синтаксис. SDK потребуется как минимум один узел, чтобы иметь возможность взаимодействовать с блокчейном æternity. Это может быть частный узел или любой другой узел, работающий в сети, в которой есть средства на ваших счетах. В объекте аргумента установки SDK вы можете указать область узлов для использования.

Предполагается, что URL-адрес указывает на узел для отправки транзакций и внутренний URL-адрес для выполнения локального кода смарт-контракта (что теоретически могут разрешить не все общедоступные узлы). На данный момент вам необходимо предоставить URL-адрес для размещения компилятора, который может быть общедоступным, на котором работает блокчейн æternity, или вашим собственным, который вы можете запустить локально на своем компьютере в контейнере докеров.

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

Теперь, чтобы протестировать ситуацию, перейдите в Sophia IDE и скопируйте код своего контракта (конечно, вы можете использовать любой пример кода). Создайте шаблон и просто вставьте в него код. Однако будьте осторожны — IDE имеют тенденцию время от времени вмешиваться в отступы кода. Чтобы проверить это, просто нажмите «Отменить» после вставки, и вы сможете увидеть, был ли ваш код подделан.

Затем вы создаете экземпляр контракта с помощью SDK, действуя так, как если бы вы выполняли функцию инициализации смарт-контрактов. На самом деле вы отправляете транзакцию для развертывания соответствующего смарт-контракта в блокчейне æternity. Это неявно запускает функцию инициализации с параметрами, которые вы передаете. Однако стоит заблокировать экземпляр контракта и посмотреть, какую полезную информацию он может предложить о контракте, который вы только что развернули.

Для последнего шага — давайте позвоним! Идите вперед и создайте предложение try catch. Для каждой функции, которую вы определяете в своем контракте, у вас есть функция-член внутри вашего члена методов экземпляров контрактов. Отличительной особенностью здесь является то, что SDK точно знает, какая функция просто считывает данные из вашего смарт-контракта, а какая изменяет состояние, и поэтому требует выполнения транзакции. Если вы хотите перестраховаться, вы можете явно указать поведение каждого вызова функции. Теперь передайте параметры в аккуратном формате.

Вы можете пробный запуск функций с отслеживанием состояния для тестирования и общего любопытства! Это поможет вам узнать, будут ли они выполняться должным образом в данный момент.

Если вы хотите выбрать, какая из ранее добавленных учетных записей, передайте объект опции в свой вызов. Здесь вы также можете указать количество ætos — наименьшую единицу Æ — для отправки вместе с вашей транзакцией. То же самое возможно и для развертывания контрактов! Просто проверьте SDK, чтобы узнать о других хитростях, которые вы можете сделать в настройках.

Для получения более подробной информации и более глубокого изучения всего материала, рассмотренного выше, снова посмотрите потрясающее видео Никиты от æeternity, освещающее эту тему! Там у вас есть пошаговые инструкции по всем этим пунктам.

Дайте мне знать в комментариях, как вам это руководство! Приветствуются все предложения!

Конечно, дальнейшие обсуждения на форуме aeternity, а также в группе Telegram более чем приветствуются! И, не забывайте, у æternity есть целый плейлист на YouTube, посвященный Софии!

И, проверьте это тоже:

Полный пример кода: https://github.com/nikita-fuchs/video...

Сборщик тестовой сети AE: https://faucet.aepps.com/

SDK: https://www.npmjs.com/package/@aetern...

Интерфейс командной строки Aeternity: https://www.npmjs.com/package/@aetern...