Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.07.2022, 07:00
Новичок на форуме
Отправить личное сообщение для Ds444 Посмотреть профиль Найти все сообщения от Ds444
 
Регистрация: 04.06.2016
Сообщений: 5

Как вытащить переменные из блокчейна, если в Node-js уже есть его SDK?
Глядите: есть такая штука, как сеть со скрытыми смарт-контрактами. Вот её тестовый вариант. Там было учебное пособие, как создать учебный скрытый смарт-контракт в тестовой сети и запустить его.

На компьютере запустил – всё работает. Теперь нужно создать сайт, чтоб я нажимал кнопку на главной странице и этот контракт исполнялся так же, как из клиента на компьютере. Спросил у разрабов в их Дискорде, что для этого нужно. Они направили меня вот сюда. Это SDK Secret network на JS.

Пришлось начать изучать JS. Решил изучать сразу на практике. Завёл себе хостинг и доменное имя, установил там Node.js по этой инструкции, установил на Node.js их SDK вот отсюда командой
npm i secretjs@beta
(разрабы Secret сказали, что лучше дописать к команде установки "@beta").

Всё установлено правильно,потому что простые примеры уроков JS из сети работают. Хоть в index.htm их запускай, хоть в app.js. А когда я взял первый попавшийся пример из secretjs: Sending Queries и в стартовый файл бекенда скопировал скрипт из примера, запустив его на хостинге – выдаёт такую ошибку:



Кто подскажет, как сделать так, чтоб всё заработало? Чтоб я смог вывести на экран любую переменную из примера. Везде гуглил – именно этой разгадки нет. Мне бы только понять, какие файлы должны быть бекенде и фронтенде – дальше я разберусь.

Первая строка из примера так и должна выглядеть?

import { SecretNetworkClient, grpc } from "secretjs"


Она должна брать подгруженное SDK из Node.js или её нужно заменить на конкретный адрес расположения secretjs? Может, системе чего-то не хватает? Путь PATH нужно указывать, если secretjs уже подгружена в Nodejs? Как подружить фронтенд и бекенд, чтоб они читали инфу из тестовой сети? Как запустить тот пример?
Ответить с цитированием
  #2 (permalink)  
Старый 09.07.2022, 01:39
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Оператор import возможен только в модулях Es6
В node модули должны иметь расширение .mjs (а не .js)
Ответить с цитированием
  #3 (permalink)  
Старый 10.07.2022, 00:40
Новичок на форуме
Отправить личное сообщение для Ds444 Посмотреть профиль Найти все сообщения от Ds444
 
Регистрация: 04.06.2016
Сообщений: 5

Хорошо, допустим. А что нужно сделать на практике? Что пишем в файл запуска app.mjs? Или лучше запускать index.htm с подключением app.mjs? Как сказать системе, что это модуль ES6?
Ответить с цитированием
  #4 (permalink)  
Старый 10.07.2022, 19:40
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Вы для чего код пишите, для Node, или для браузера?
Если для node, то при чем тут html?
Ответить с цитированием
  #5 (permalink)  
Старый 11.07.2022, 03:02
Новичок на форуме
Отправить личное сообщение для Ds444 Посмотреть профиль Найти все сообщения от Ds444
 
Регистрация: 04.06.2016
Сообщений: 5

Мне просто нужно понять, как управлять функциями смарт-контракта из браузера. Подойдут любые варианты. Хоть как. Сейчас моя цель – исполнение учебного смарт-контракта по нажатию кнопки на сайте. Он уже есть в тестовой сети. Нигде не могу найти туториал, что для этого должно быть в коде и с чего вообще начать. Как заставить те примеры работать? Мне бы первый рабочий код, а дальше я по нему разберусь.

Последний раз редактировалось Ds444, 11.07.2022 в 03:33.
Ответить с цитированием
  #6 (permalink)  
Старый 11.07.2022, 03:52
Новичок на форуме
Отправить личное сообщение для Ds444 Посмотреть профиль Найти все сообщения от Ds444
 
Регистрация: 04.06.2016
Сообщений: 5

А не это ли ответ? Этой инструкции раньше не было. Оно ведь?

Видимо они убрали старые инструкции по быстрому старту контрактов и опубликовали новые с учётом фронтенд-разработки. Мне пришлось искать "быстрый старт смарт-контрактов" на Веб-архиве. Нужна пауза для изучения. Там некоторые разделы ещё пустые. Судя по всему, всё делается через React.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ViewModel: Как запретить загрузку хранилища, если его фильтр не определен? khusamov ExtJS 0 22.05.2016 19:25
Как удалить DIV если есть запись в cookie zahar_92 jQuery 3 13.05.2016 14:44
в getElement удаётся получить тэг через getElemetsByTagName Терехов Станислав Общие вопросы Javascript 19 19.06.2014 06:35
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
как записать <form> с отправкой .. если есть уже <form> с другим обработчиком Arfey Серверные языки и технологии 9 01.06.2010 16:31