1. ホーム
  2. linux

[解決済み] node.js: モジュール 'request' が見つからない

2022-12-21 23:46:54

質問

私は リクエストモジュール をインストールしたところ、エラーが発生しました。

module.js:340
    throw err;
          ^
Error: Cannot find module 'request'

このエラーに関するすべての投稿を読み、これはモジュール要求がグローバルに見つからないためであることを理解しましたが、私はすでに2つの提案を試してみました。

npm install request -g

これは/usr/loca/binにインストールするのでしょうか? なぜならそこに見当たらないからです。

そして

sudo npmリンク

/usr/local/lib/node_modules/request -> /Users/soulsonic/dev/sandbox/node_test/request

各コマンドの後にターミナルを再起動しましたが、モジュールが見つからないというエラーが出続けます。

更新

npm install request" が node_modules の下に "request" を追加しなかったので、最初のディレクトリで何らかの衝突があったのでしょう (そこには他の 10 個のものがあります) .... 新しいディレクトリに切り替えた後、それはちょうど動作しました。

gスイッチで実行すると、/usr/local/lib/node_modules/requestにインストールされることがわかります。

上記のパスが自動的に追加されるように、私のプロファイルを更新する必要があるようです。

どのように解決するのですか?

プロジェクトのディレクトリに移動する

mkdir TestProject
cd TestProject

このディレクトリをプロジェクトのルートにします(これにより、デフォルトの package.json ファイルが作成されます)。

npm init --yes

必要な npm モジュールをインストールし、プロジェクトの依存関係として保存します (これは package.json )

npm install request --save

を作成します。 test.js ファイルをプロジェクトディレクトリに作成し、パッケージ例のコードを記述します。

var request = require('request');
request('http://www.google.com', function (error, response, body) {
  if (!error && response.statusCode == 200) {
    console.log(body); // Print the google web page.
  }
});

プロジェクトディレクトリは以下のようになります。

TestProject/
- node_modules/
- package.json
- test.js

プロジェクトディレクトリでnodeを実行します。

node test.js