res.send()
メソッドは1回だけ実行できる。2回目はエラーになる。
res.send('1');
res.send('2'); // Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
res.send()
メソッドが実行済みか判定するにはres.writableEnded
プロパティを使う。
consle.log(res.writableEnded) // false
res.send('1');
consle.log(res.writableEnded) // true
if (!res.writableEnded) {
res.send('2'); // 実行されない
}
参考
https://nodejs.org/api/http.html#http_response_writableended