什么时候以及为什么headersSent为true?

时间:2019-02-16 07:54:34

标签: javascript node.js networking

我最近阅读了koa.js的源代码,发现有一些关于headers的条件判断,即node.js api。所以我想知道为什么我们需要做这个判断?

2 个答案:

答案 0 :(得分:0)

如果headersSent为true,则从字面上意味着已经发送了头文件,从那时起,您将无法添加/设置任何其他头文件(火车已经过去了,您来晚了,不能再骑它了)。

因此,如果我们不得不弄乱标题,那么知道何时有可能,什么时候没有是很重要的。因此,headersSent是有条件的。

如果您发布了感兴趣的确切代码,我们将为您提供更多信息。

答案 1 :(得分:0)

根据HTTP协议规范,HTTP答案通常由两部分组成

  • 标头:设置响应代码,管理缓存并设置cookie(以及其他一些东西)

  • body:答案的内容。

主体可以分部分发送(PHP中的不定flush()),标头始终在开头,如果发送结尾标记,则不能添加其他字段。

这就是'headersSent`的意思-如果您可以更改标题。