Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the cli

195 阅读1分钟

平时总喜欢偷懒,单行执行if就简写,现在发现不能偷懒,有if就得:加else,加{ }


错误示例

try{
       if(res.body){
        res.send({
            code : 1
        })
    }
    res.send({    //异步明显这里的 send() 方法会跟上面 if 同时执行,发送了两边,然后就报错了
        code: 0
    }) 
} catch(err){
    console.log(err)
}

正确示例

try{
       if(res.body){
        res.send({
            code : 1
        })
    }else{   //包住它,别让他执行;
        res.send({
            code: 0
        }) 
    }
} catch(err){
    console.log(err)
}