我有一个nodejs http服务器在运行,我想更改特定网站上的内容(有点像我自己的私人广告屏蔽程序)。我决定用小号来做这个。现在的问题是,当喇叭注入新内容并将其管道传输到http响应(http.IncomingMessage)时,headers["content-length"]值不再有效。
一些浏览器似乎并不在意(W7上的Chrome/Firefox),其他浏览器则会立即崩溃(iPad上的Safari)。我试着将内容长度的标题全部擦除,结果类似(Safari永远在等待)。
切换内容后,如何设置响应权限的内容长度?我找到了哈蒙,但我只需要最后一点,所以哈蒙觉得开销太大了。或者这不是那么琐碎吗?
如果您不知道发送标头时响应的大小(这里的情况),则需要使用分块传输编码。
如果未指定任何Content-Length
,则节点应默认为分块传输编码。请删除设置Content-Length
标头的代码,或者尝试res.removeHeader('Content-Length')
。