Web3不会在Azure上编译

问题描述 投票:0回答:2

复制步骤:

  1. 在Visual Studio 2019社区中,创建一个新的Basic Azure Node.js Express 4应用程序(TypeScript)。
  2. Npm安装web3
  3. [import path = require('path');之后添加第4行;

    var Web3 = require('web3');

  4. 在本地运行以确保它正常运行
  5. 将其发布到Azure并查看日志

预期结果

它应该编译并可以正常运行-就像在步骤4中本地所做的一样

实际结果(来自Azure日志流)

[Thu Apr 02 2020 17:31:57 GMT + 0000(世界协调时间):应用程序引发了未捕获的异常并终止了:D:\ home \ site \ wwwroot \ node_modules \ web3-core-method \ src \ index .js:285.then(异步函数(接收){^^^^^ SyntaxError:missing)在Module._compile(module.js:542 :) Object.exports.runInThisContext(vm.js:76:16)的参数列表之后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(module.js:497:17)在require(内部/module.js:20:19)在Object。 (D:\ home \ site \ wwwroot \ node_modules \ web3-core \ src \ extend.js:27:14)在Module._compile(module.js:570:32)应用程序引发了未捕获的异常并终止了:D :\ home \ site \ wwwroot \ node_modules \ web3-core-method \ src \ index.js:285.then(异步函数(receipt){^^^^^ SyntaxError:missing)在Object.exports.runInThisContext( vm.js:76:16)at Module._compile(module.js:542:28)at Object.Module._extensions..js(module.js:579:10)at Module.load(module.js:487: 32)在tryModuleLoad(module.js:446:12)在Function.Module._load(module.js:438:3)在Module.require(module.js:497:17)在require(内部/module.js: 20:19)。 (D:\ home \ site \ wwwroot \ node_modules \ web3-core \ src \ extend.js:27:14)在Module._compile(module.js:570:32)

我看过\ node_modules \ web3-core-method \ src \ index.js中的第285行,看起来不错。

我删除了package-lock.json和node_modules目录,并再次安装了npm(更不用说我在原始项目小型测试项目中都这样做了。

我不知所措。有什么建议吗?

node.js typescript azure compiler-errors web3
2个回答
0
投票

我在桌面上运行最新版本的web3(1.2.6)时也遇到了同样的问题,在导入web3时显示此错误。

const Web3 = require('web3');

有趣的是,如果我在节点交互式控制台中写同一行并且对象Web3正常工作,就没有问题。

我将web3版本更改为1.0.0-beta.55,并且工作正常。我希望这是要在最新版本中修复的错误。

PS:在尝试更改web3版本之前,我尝试将节点从8.9.4更新为13.12.0,但错误仍然存​​在。


0
投票

所以。 。 。 。我终于想通了。

Azure,默认情况下具有一个非常小的旧版本的Node -您只能将其升级到8.9.4(而节点12.16.1是LTS版本)。

但是通过添加值为8.9.4的配置设置WEBSITE_NODE_DEFAULT_VERSION进行升级解决该问题。

© www.soinside.com 2019 - 2024. All rights reserved.