NodeJS语法错误

时间:2018-08-15 19:10:29

标签: node.js async-await

我的异步功能出现语法错误。有2个异步功能,其中1个工作正常,但另一个有错误。当我提供服务时一切正常,但是在部署时会出现此错误:

error

请帮助我。

我的节点的版本为 v8.11.3

global.database = firebase.database()
global.auth= firebase.auth()

app.use((req, res, next) => {
    getReady().then(() => {
        next()
    })
})

async function getReady() {
    await auth.signInAnonymously()
    await database.ref('Users').once('value', data => {
        users = data.val()
    })
}

app.listen(8000)

exports.main = functions.https.onRequest(app);

1 个答案:

答案 0 :(得分:0)

如果出现此错误,那是因为Firebase函数期望使用节点的版本6。您可以使用回调将异步/等待转换,也可以将节点的版本升级到8。为此,这里是steps

  • 将您的firebase-functions版本升级到2.0.0
  • 将firebase-tools升级到4.0.0
  • "engines": { "node": "8" }添加到您的/functions/package.json

此外,如果您想从Firebase发出请求,建议您遵循Call functions via HTTP requests,因为您没有为请求指定路由,也不应监听。