2017-06-30 18 views
2

私のNodejsコードでは、正常に動作していたcreate関数がありますが、関数が呼び出されたときに何かが発生しました。それは、火災や要求がなされているが、私はこのエラーを取得:ノード/マングース - エラー:送信後にヘッダーを設定できません

ここ

は私の端末でのエラーです:

PUT /api/request/create 200 98.981 ms - 1929 
events.js:160 
     throw er; // Unhandled 'error' event 
    ^

エラー:それらが送られた後、ヘッダーを設定することはできません。

exports.create = (req, res, next) => { 
    const body = req.body; 

    const Request = new Requests({ 
    //customer_id: body.customer_id, 
    customer: body.customer, 
    tasks: body.tasks, 
    submitted_by: body.submitted_by, 
    assignees: body.assignees, 
    // safety_equipment: body.safety_equipment, 
    special_instructions: body.special_instructions, 
    area_instructions: body.area_instructions, 
    additional_equipment: body.additional_equipment, 
    access: body.access, 
    training: body.training, 
    ppe: body.ppe, 
    description: body.description, 
    square_footage: body.square_footage, 
    flooring_type: body.flooring_type, 
    due_date: body.due_date, 
    is_converted: body.is_converted, 
    quote_amount: body.quote_amount, 
    is_billable: body.is_billable, 
    budgeted_time: body.budgeted_time, 
    site_visit: body.site_visit, 
    locations: body.locations, 
    job_number: body.job_number 
    }); 

    Request.save((err, request) => { 
    if (err) { 
     res.status(401).json({ 
     message: err 
     }); 
     console.log(err); 
    } 

     res.status(200).json({ 
     request 
     }); 

     return next(); 
    }); 
} 

私はほとんど同じコードを利用して、彼らはすべての問題を持っていない私のアプリの他の場所を持っている:

は、ここに私の関数です。私はここで会計処理していない競合状態が起こっていますか?

答えて

1

err場合、あなたのコードは、ステータス401で応答し、その後再びだから、これはbriliiantは

if (err) { 
       res.status(401).json({ 
       message: err 
       }); 
       console.log(err); 
      } 
// Add else 
    else{ 

       res.status(200).json({ 
       request 
       }); 
     } 
+0

ある試みる状態200で応答しようとしている、trueです。私は実際にリターンnext()も取り除かなければなりませんでした。それがトリックでした。ありがとう! –

関連する問題