FIREBASE警告:用户回调引发了异常。错误[ERR_HTTP_HEADERS_SENT]:将标头发送到客户端node.js后无法设置标头

时间:2019-03-21 15:47:08

标签: node.js firebase

我正在尝试将数据库的数据保存在一个名为store的变量中,当一个临时对象在url上调用它时,我想res.send(store)

function prova(req,res){
 var ref = db.ref()
 var store = {}
 store["lista"] = []
 ref.orderByChild("ccomune").equalTo(req.params.comune).on("child_added",function(data) {
  // CONTINUA QUI
  console.log(data.val())
  //for(var i = 0; i < data.val; i++)
    var comune = data.val().ccomune
    var provincia = data.val().cprovincia
    var regione = data.val().cregione
    var nome = data.val().cnome

    store["lista"][0] = {}
    store["lista"][0]["comune"] = comune;
    store["lista"][0]["provincia"] = provincia;
    store["lista"][0]["regione"] = regione;
    store["lista"][0]["nome"] = nome;

    res.send(store)
  })
}

我在

处调用此函数
app.get("/:comune", (req, res)=>{
  prova(req,res)
})

我了解我无法在该函数中调用res.send(store),但是如果我在该函数之外调用它,则返回null,例如

function prova(req,res){
 var ref = db.ref()
 var store = {}
 store["lista"] = []
 ref.orderByChild("ccomune").equalTo(req.params.comune).on("child_added", function(data) {
  // CONTINUA QUI
  console.log(data.val())
  //for(var i = 0; i < data.val; i++)
    var comune = data.val().ccomune
    var provincia = data.val().cprovincia
    var regione = data.val().cregione
    var nome = data.val().cnome

    store["lista"][0] = {}
    store["lista"][0]["comune"] = comune;
    store["lista"][0]["provincia"] = provincia;
    store["lista"][0]["regione"] = regione;
    store["lista"][0]["nome"] = nome;

  })
  res.send(store)
}

有人可以帮助我解决此错误吗?

  

@ firebase /数据库:FIREBASE警告:用户引发了异常
  打回来。错误[ERR_HTTP_HEADERS_SENT]:在
之后无法设置标题   它们被发送给客户

0 个答案:

没有答案