Web3 не будет компилироваться на Azure - PullRequest
0 голосов
/ 02 апреля 2020

Действия для воспроизведения:

  1. В сообществе Visual Studio 2019 создайте новое приложение Basi c Azure Node.js Express 4 (TypeScript).
  2. Npm установить web3
  3. Добавить строку 4 после пути импорта = require ('path');

    var Web3 = require ('web3');

  4. Запустите его локально, чтобы убедиться, что он работает (работает)
  5. Publi sh Azure и просмотрите журналы

Ожидаемый результат

Он должен скомпилироваться и нормально работать - как это было локально на шаге 4

Фактические результаты (из Azure потока журнала)

Чт 02 апреля 2020 17:31:57 GMT + 0000 (Всемирное координированное время): приложение сгенерировало необработанное исключение и завершается: D: \ home \ site \ wwwroot \ node_modules \ web3-core-method \ src \ index. js: 285.then (asyn c функция (получение) {^^^^^ SyntaxError : отсутствует) после аргумента listat Object.exports.runInThisContext (vm. js: 76: 16) в Module._compile (module. js: 542: 28) в Object.Module._extensions .. js (module . js: 579: 10) в Module.load (модуль. js: 487: 32) в tryModuleLoad (модуль. js: 446: 12) в Function.Module._load (модуль. js: 438: 3) в Module.require (модуль. js: 497: 17) по требованию (внутренний / модуль). js: 20: 19) на объекте. (D: \ home \ site \ wwwroot \ node_modules \ web3-core \ src \ exte. js: 27: 14) в модуле Module._compile (module. js: 570: 32) Приложение выдало ошибку исключение и прекращается: D: \ home \ site \ wwwroot \ node_modules \ web3-core-method \ src \ index. js: 285.then (функция asyn c (получение) {^^^^^ Синтаксическая ошибка: отсутствует) после аргумента listat Object.exports.runInThisContext (vm. js: 76: 16) в Module._compile (module. js: 542: 28) в Object.Module._extensions .. js ( module. js: 579: 10) в Module.load (module. js: 487: 32) в tryModuleLoad (module. js: 446: 12) в Function.Module._load (module. js : 438: 3) в Module.require (модуль. js: 497: 17) по требованию (внутренний / модуль. js: 20: 19) в объекте. (D: \ home \ site \ wwwroot \ node_modules \ web3-core \ src \ exte. js: 27: 14) в модуле Module._compile (module. js: 570: 32)

Я просмотрел строку 285 в \ node_modules \ web3-core-method \ src \ index. js, и она выглядит хорошо.

Я удалил блокировку пакета. json и мой Папка node_modules и npm установлены снова (не говоря уже о том, что я сделал это как для оригинального проекта , так и для небольшого тестового проекта).

Я в растерянности. Есть предложения?

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

итак. , , , Я наконец-то понял это.

Azure, по умолчанию установлена ​​крайне старая версия Node - и вы можете обновить ее только до 8.9.4 (в то время как узел 12.16.1 является версией LTS).

Но обновление с добавлением параметра конфигурации WEBSITE_NODE_DEFAULT_VERSION со значением 8.9.4 решит проблему.

0 голосов
/ 05 апреля 2020

У меня возникла та же проблема при запуске последней версии web3 (1.2.6) с реакцией на моем рабочем столе, эта ошибка отображается при импорте web3.

const Web3 = require('web3');

Интересно отметить что нет проблем, если я напишу ту же строку в интерактивной консоли узла и объект Web3 будет работать правильно.

Я изменил версию web3 на 1.0.0-beta.55, и она работала нормально. Я надеюсь, что эта ошибка будет исправлена ​​в последних версиях.

PS: прежде чем пытаться изменить версию web3, я попытался обновить узел с 8.9.4 до 13.12.0, но ошибка все еще сохраняется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...