Node.js:路由设置的更改不会显示效果

时间:2015-11-22 11:15:55

标签: javascript node.js

由于某些奇怪的原因,我的路线设置(MEAN环境,Node v0.12.2和express 4)的某些更改不再显示效果!?特别是使用" .sendfile()"。

响应客户端请求的说明
app.get('/', function(req, res){
    res.sendfile("/public/index.html"); // <-- trying to exclude or change this
    console.log("debug message"); //added later, never shown!!
});

在上面的示例中排除或更改sendfile指令并不会改变任何内容 - index.html是根据请求提供的。甚至不再显示像console.log这样的简单调试消息了?!这是我检查的内容:

  • 多次重启Node.js服务器和计算机
  • 检查了routes.js文件的副本
  • 检查归属路线的重复(&#34; /&#34;)
  • 清理浏览器缓存
  • 甚至删除了整个路线,网站仍然可以根据要求发送!?!?

也许有某种需要擦除的服务器端缓存?!我不知道什么是错的。建议任何人?

1 个答案:

答案 0 :(得分:0)

快递4相对于快递3有变化。在快递4中,我们有一个新方法 app.route()来为路线路径和新类创建可链接的路线处理程序< strong> express.Router 创建模块化可安装路由处理程序。有关详细信息,请参阅:Moving to Express 4您可以尝试按以下顺序使用代码:

app.route('/')
  .get(function(req, res) {
    res.render('index');
  });

通过添加:

,它也可以很好地提供静态文件
app.use(express.static(path.join(__dirname, '../public')));
祝你好运......:)