节点js |使用外部文件作为响应发送?

时间:2014-05-31 17:20:40

标签: javascript jquery node.js npm

我看到了类似的问题,但我正在寻找一种手动方式。我不想使用快递或其他图书馆来做这件事。

var http = require('http');

var server = http.createServer(function(req, res) {
    res.end('<h1 >Hi!</h1>'); //I want to to fetch a file ex: index.html
});

server.listen(9334);

我该怎么做?也作为一个子问题,仅仅因为我很好奇。是否可以使用jQuery ajax来获取此文件?

1 个答案:

答案 0 :(得分:1)

以下一种方法是使用'fs'。

var http = require('http');
var fs = require('fs');

var server = http.createServer(function(req, res) {
    fs.createReadStream("filename.ext").pipe(res);
});

server.listen(9334);

这也很好,因为如果文件很大,数据将流式传输到响应,而不是等待读取操作完成。虽然在某些情况下可能需要设置“Content-Type”标题。