7

我有一个快速控制器动作“可能”发送内容的情况。

“发送”表示内容已发送 (http 200) 或 http 状态设置为某些内容(例如 http 状态 204 或重定向)

如果没有发送/设置默认例程,则应发送默认内容。

如果快速控制器操作已经设置内容或设置状态代码,我如何在我的默认例程中进行测试?

4

1 回答 1

9

response.headersSent应该管用。

例如:

if (response.headersSent) {
    console.log('Headers sent!')
} else {
    console.log('Headers have not been sent.')
}
res.writeHead(200);
if (response.headersSent) {
    console.log('Headers sent!')
} else {
    console.log('Headers have not been sent.')
}

与客户端连接应记录:

Headers have not been sent.
Headers sent!
于 2017-04-08T18:25:49.840 回答