无法在Azure中发布ipfs-api Node.js模块

时间:2018-07-04 09:53:29

标签: node.js azure azure-web-sites ipfs

我能够从本地成功将文件上传到IPFS服务器。当我尝试将相同的代码发布到Azure(Node.js空应用程序)时,它抛出了如下所述的错误

SyntaxError: Unexpected token {
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (D:\home\site\wwwroot\node_modules\multiaddr\src\index.js:9:16)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)

代码:

var node= require('ipfs-api')(options)    
 node.files.add(filesStreamm, function (err, files) {
        if (err || !files) {
            return console.error('ipfs add error', err, res1)
        }
       // console.log(files);
        files.forEach((file) => {
            if (file && file.hash) {
                console.log('successfully stored', file.hash)               
            }
        })             
    })

有人遇到这个问题吗?有什么建议吗?

1 个答案:

答案 0 :(得分:0)

如果节点版本不正确,则会出现相同的错误。在门户网站的“应用程序设置”中检查WEBSITE_NODE_DEFAULT_VERSION

  1. ipfs-api需要Node.js v6 (LTS) or higher

  2. 节点版本应在Azure上可用。

例如,您可以使用8.11.1。转到https://<webappname>.scm.azurewebsites.net/api/diagnostics/runtime查看所有可用版本。