【发布时间】:2014-04-15 21:52:24
【问题描述】:
刚开始玩 Node.js,在看到几个示例后,我发现通常会在返回一些内容之前设置 Content-Type。
HTML 通常是这样的:
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(html);
res.end();
图片:
res.writeHead(200, {'Content-Type': 'image/png'});
res.write(img, 'binary');
res.end();
我阅读了docs for .write(),它说如果没有指定标头“它将切换到隐式标头模式并刷新隐式标头”
通过一些测试,我发现我可以像这样写一行:
res.end(html); // or
res.end(img);
这些都可以正常工作。我还用我的本地 Apache 服务器进行了测试,当我查看加载图像时设置的标头时,那里没有设置 Content-Type 标头。
我需要费心设置它们吗?如果我不这样做可能会出现什么情况或错误?
【问题讨论】:
-
很好的问题。 node.js 文档到处引用 隐式标头模式,但没有文档告诉开发人员它为应用程序开发人员做了什么。
标签: javascript node.js http-headers content-type