从express.js中删除所有标题
我正在创build一个页面,我有一些数据被其他设备parsing。 我曾经这样做与PHP,但我把它移动到节点。 我需要从页面中删除任何和所有标题,所以我只有我的输出。 这个输出是对GET请求的响应。
目前我有
HTTP/1.1 200 OK Date: Wed, 11 Sep 2013 11:54:14 GMT Connection: close My output
我需要它来显示
My output
通常,您可以使用Express(node.js)中的Response对象的API来删除标头,但是其中的一些标准是HTTP规范所要求的,并且应始终存在。
date标题是这样一个必需的。 看到这里: https : //stackoverflow.com/a/14490432/1801
第一行( HTTP/1.1 200 OK
)不是头文件 – 它是HTTP协议的一部分,每个响应都应该以它开始。 否则,浏览器将不知道如何处理响应。
如果你想删除其他自定义标题,你可以这样做:
app.get('/test', function (req, res) { var body = "some body"; res.removeHeader('Transfer-Encoding'); res.removeHeader('X-Powered-By'); res.end(body); });
Express不会这样做,因为Express是用于HTTP的。 你所要求的不是HTTP,因为它没有遵循一些RFC。 做你想做的事情,你将不得不绕过快车。 在端口上侦听,parsing来自embedded式设备的GEt请求,并发送所需的数据。