Node.js错误:找不到模块“request”

5

好的,这是一个常见的错误,我已经阅读了这个node.js: cannot find module 'request'

request模块已安装在我的node_modules中。我的完整node应用程序是

var r = require("request");


var s = r('http://www.foo.com/');


s.on('data',function(chunk){

    console.log(">>>Data>>> "+chunk);
});


s.on('end', function(){
    console.log(">>>Done!");
})

我只需简单地调用应用程序即可运行

node app

但我一直得到相同的错误

怎么回事?

我的目录结构是

app.js
node_modules
    request
        node_modules
            bl
            combined-stream
            form-data
            hawk
            mime-types
            tough-cookie

完整的错误跟踪如下:
module.js:340
    throw err;
          ^
Error: Cannot find module 'request'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (/Users/foo/Documents/.../app.js:1:71)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)

1
脚本附近是否有 node_modules 目录?你能展示一下你的目录结构吗? - Svenskunganka
请查看我的目录结构。我的 Node 版本是 v0.8.4,npm 版本是 1.1.45。 - Bachalo
我还运行了npm init来创建一个package.json文件。这是不是说明我的node安装有问题? - Bachalo
这个回答解决了你的问题吗?node.js:找不到模块“request” - Michael Freidgeim
3个回答

18

你的目录结构看起来有些问题。我建议删除node_modules目录并重新运行npm命令。

保持一个package.json文件并查看所列出的依赖关系始终是个好主意。

cd getFoo
npm init # answer the qestions
npm install --save request
node app.js

这都与--save有关。 - Sadik anass

5

前往您的应用程序根目录

cd my-app

删除文件夹 node_modules

rm -rf node_modules

重新安装 package.json

npm install

启动服务器

npm start

1

我也遇到了同样的问题,我安装了request包,方法如下: "npm install request --save",这解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接