Javascript Node.js Web服务器分块编码问题
我正在尝试构建一个node.js Web服务器,它侦听端口9000并在请求时读取js文件,然后在响应中发送输出。这就是我到目前为止所做的:Javascript Node.js Web服务器分块编码问题,javascript,node.js,encoding,Javascript,Node.js,Encoding,我正在尝试构建一个node.js Web服务器,它侦听端口9000并在请求时读取js文件,然后在响应中发送输出。这就是我到目前为止所做的: var http = require('http'), fs = require('fs'), path = require('path'); http.createServer(function(request, response){ response.writeHead(200, {'Content-Type': 'text/javascrip
var http = require('http'),
fs = require('fs'),
path = require('path');
http.createServer(function(request, response){
response.writeHead(200, {'Content-Type': 'text/javascript'});
switch (request.url){
case '/main.js' :
fs.createReadStream(path.normalize('C:\\dev\\projects\\main.js')).pipe(response);
response.end()
break;
case '/page.js' :
fs.createReadStream(path.normalize('C:\\dev\\projects\\src\\page.js')).pipe(response);
response.end()
break;
case '/page2.js' :
fs.createReadStream(path.normalize('C:\\dev\\projects\\src\\page2.js')).pipe(response);
response.end()
break;
default :
response.writeHead(404);
response.write('Not Supported');
response.end();
break;
}
}).listen(9000);
console.log('listening on port 9000........')
我从HTML页面调用main.js文件,如下所示:
<script type="text/javascript" src="http://localhost:9000/main.js"></script>
我试着在回复中使用标题,但没有成功。有什么想法吗?您从main.js输出的内容类型是什么?“text/javascript”?删除使用
.pipe()
@bloodyKnuckles的显式response.end()
调用main.js的输出确实是text/javascript。@JonathanLonowski我做了。同样的行为。这似乎是路径的问题,我会让你们知道的,谢谢你们的回复!
GET http://localhost:9000/main.js net::ERR_INVALID_CHUNKED_ENCODING