Nodejs:错误:无法find模块“HTML”

即时通讯使用nodejs和im试图只提供html文件(没有玉,ejs …引擎)。

inheritance人我的切入点(index.js)代码:

var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.set('port', (process.env.PORT || 5000)); app.use(express.static(__dirname + '/public')); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.use(express.static(__dirname + '/public')); app.get('*', function(req, res){ res.render('index.html'); }); app.listen(app.get('port'), function() { }); 

当我打到url“localhost:5000 /”时,这是做得很好,但是当我尝试像“本地主机:5000 /无论什么”我得到以下消息: 错误:无法find模块“HTML”

即时通讯新的nodejs,但我想所有的路线来呈现index.html文件。 我怎样才能做到这一点 ???

谢谢。

您需要指定您的视图文件夹并将引擎parsing为HTML。

 var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.set('port', (process.env.PORT || 5000)); app.use(express.static(__dirname + '/public')); app.set('views', __dirname + '/public/views'); app.engine('html', require('ejs').renderFile); app.set('view engine', 'html'); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.get('*', function(req, res){ res.render('index.html'); }); app.listen(app.get('port'), function() { }); 

只有在使用某些渲染引擎(如jade或ejs)时才会使用渲染,如果您打算使用纯HTML,则将其放置在公用文件夹中或将其作为静态文件提供。

 res.sendFile('index2.html', {root : __dirname + '/views'});