前提・実現したいこと
自習学習でGETを使ってAPIのハンズオン開発を行っておりユーザーリストを取得するためのAPIを叩いた際(npm run start時)にlocalhost:3000を実行したいです。
発生している問題・エラーメッセージ
しかしユーザーリストを取得するためのAPIを叩く際にnpm run startを実行すると以下のエラーが出ていまします。
エラーメッセージ > basic-rest-api@1.0.0 start /Users/ユーザー名/projects/basic-rest-api > node-dev app/app.js sh: node-dev: command not found npm ERR! code ELIFECYCLE npm ERR! syscall spawn npm ERR! file sh npm ERR! errno ENOENT npm ERR! basic-rest-api@1.0.0 start: `node-dev app/app.js` npm ERR! spawn ENOENT npm ERR! npm ERR! Failed at the basic-rest-api@1.0.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /Users/ユーザー名/.npm/_logs/2021-11-07T07_44_36_746Z-debug.log Waiting for the debugger to disconnect...
該当のソースコード
js
1 2//requireでモジュールを入れる 3const express = require('express') 4const app = express() 5//sqlite3をrequireを使ってimport、コンストラクタを定義 6const sqlite3 = require('sqlite3') 7const dbPath = "app/db/database.sqlite3" 8 9//Get all users 10//'/api/v1/hello'のurlに対してgetメソッド, 引数がリクエストとレスポンスの関数 11app.get('/api/v1/users', (req, res) =>{ 12 //connect database,コンストラクタを使用 13 const db = new sqlite3.Database(dbPath) 14 //usersテーブルから全てのカラムを取得 15 db.all('SELECT * FROM users', (err, rows) =>{ 16 //レスポンスがjsonメソッドを持っている,ここに記述したjsonをオブジェクト型として返す 17 res.json(rows)//正しくデータが取得できたらjson形式でrowsを返す 18 }) 19 20 db.close() 21 22}) 23 24//Get a users 25//'/api/v1/hello'のurlに対してgetメソッド, 引数がリクエストとレスポンスの関数 26app.get('/api/v1/users/:id', (req, res) =>{ 27 //connect database,コンストラクタを使用 28 const db = new sqlite3.Database(dbPath) 29 const id = req.params.id 30 31 //usersテーブルから全てのカラムを取得 32 db.get(`SELECT * FROM users WHERE id = ${id}`, (err, rows) =>{ 33 //レスポンスがjsonメソッドを持っている,ここに記述したjsonをオブジェクト型として返す 34 res.json(rows)//正しくデータが取得できたらjson形式でrowsを返す 35 }) 36 37 db.close() 38 39}) 40 41 42 43//ローカルの環境変数を参照。指定がなければ3000を使用 44const port = process.env.PORT || 3000; 45//通常ならば3000でアプリを立ち上げる 46app.listen(port) 47console.log("Listen on port:" + port); 48 49
試したこと
まずnpm自体のアップデートしました
npm install -g npm
次に既存のnode_modulesを削除し
rm -rf node_modules rm package-lock.json
再度node_modulesをインストール
npm install
これをした後にnpm run startをしても同じエラーが出てしまいます。
なのでnpm install -g node-devももう一度アップデートしてみました
無事アップデートできたのでもう一度npm run startしたら同じエラーが出ました
回答1件
あなたの回答
tips
プレビュー