npm开始与节点app.js

我对Node非常陌生,并试图让我的头脑应用基础知识。 我很好奇为什么这两个命令:

节点app.js

–vs–

npm开始

输出相同的东西到控制台,似乎继续“聆听”,但为什么当我尝试访问http:// localhost:3000我只得到一个404运行第一个命令。

我发现Express 4似乎有不同的应用程序结构,但是为什么它会成功侦听,而另一个则不会,尽pipe控制台中有相同的行为。

任何解释都很有帮助。 谢谢!

这两个命令不一定是相同的。 npm start运行无论'开始'脚本configuration说按照'package.json'中定义的运行, node app.js执行'节点'中的'app.js'文件。 有关更多信息,请参阅http://browsenpm.org/package.json 。 所以如果你有下面的package.json,那么这些命令是完全不同的。

 { "name": "my cool node project", .... "scripts": { "start": "node index.js" } .... } 

下面的package.json是你想让它们相同的东西。

 { "name": "my cool node project", .... "scripts": { "start": "node app.js" } .... } 

我首先检查'start'脚本是否设置为运行,然后尝试直接在CLI中运行相同的命令,而不是通过NPM来查看差异。

但为什么一个人成功地听,而另一个却没有

如果服务器正在返回404,则表示服务器正在侦听,但是文档根目录或访问权限未正确设置,因此返回“未find文件”响应。