Express res.sendFile强制下载而不是提供HTML

时间:2015-10-14 07:30:23

标签: javascript node.js express

我在Express res.sendFile功能方面遇到了最奇怪的问题。以下是我index.js中的代码:

app.get('/', function(req, res){
    var path = __dirname + '/views/index.ejs';
    res.sendFile(path);
});

没有什么复杂的,但是当导航到localhost时,浏览器会下载HTML而不是显示它。

2 个答案:

答案 0 :(得分:3)

如果你想渲染只使用快速效用函数

app.get("/", function(req, res) {
    res.render(__dirname + "/views/index.ejs");
});

答案 1 :(得分:0)

我不知道这是否只是expressRouter - 但是我通过在get上声明expressRouter函数来解决这个问题,让主应用程序使用此路由器,然后,最重要的是,使用res.render而不是res.sendFile

var router = express.Router();

router.get('/', function(req, res){
   res.render(__dirname + '/views/index.ejs');
});