簡體   English   中英

添加整數以創建條目后的 ERR_EMPTY_RESPONSE node.js

[英]ERR_EMPTY_RESPONSE node.js after adding Integer to create entry

我使用node.js express 和sails.js 來構建我的應用程序。

當我在視圖中添加另一個輸入時,它在保存時崩潰了。

ERR_EMPTY_RESPONSE

create: function(req, res){
    var title = req.body.title;
    var body = req.body.body;
    var kUser = req.body.kUser;

    Knowlege.create({title:title, body:body, kUser:kUser}).exec(function(err){ // kUser:kUser seems to be the problem
        if(err){
            res.send(500, {error: 'Database Error'});
        }
        res.redirect('/knowlege/list');
    });

終端錯誤:

Error: Can't set headers after they are sent.
at validateHeader (_http_outgoing.js:489:11)
at ServerResponse.setHeader (_http_outgoing.js:496:3) (...)

模型:

 module.exports = {
  attributes: {
    title:{
      type: 'string'
    },
    body:{
      type: 'text'
    },
    kUser:{
      type: 'integer',
      length: '11'
    }
  },
  connection:'MysqlServer'
};

Can't set headers after they are sent錯誤意味着您正在嘗試在響應已發送后對其進行處理。

您的問題是,如果您的回調出現錯誤,您不會在發送響應后結束流程。
既然你沒有,重定向也會發生,但響應已經發送。

只需添加return退出函數:

if(err){
    return res.send(500, {error: 'Database Error'});
}
res.redirect('/knowlege/list');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM