以前Node.jsを入れたので、何か書いてみたいと思いAPIを書きたくなりました。
prupru-prune.hatenablog.com
検索してみるととても参考になる記事が見つかりました。 qiita.com
この記事内のコードを写経してAPIやNoSQL何たるを幾何か理解できました。その過程で遭遇したいくつかのエラーとその解決方法を残しておきます。
TypeError: Cannot read properties of undefined (reading 'name')
POST、PUT、メソッドにおいてreq.body.nameを使おうとすると出てくるエラー。console.log( req.body )かres.send( req.body )するとわかりますが、実はbody自体undefinedになってます。
こちらの解決策が見つかりました。曰く、以下のbody-parserの設定をコードの頭の方でするといいらしい
app.use(Express.json());// body-parser settings
cannot use import statement outside a module node
body-parserの設定に使うExpress.json()を使うため、以下のようなimport文をindex.jsに書きました。
import Express from "express"
するとcannot use import statement outside a module node というエラーが出ました。モジュール外ではimport文は使えませんと言ってるみたいですね。
こちらの記事によれば、package.jsonのtypeという要素をmoduleにすればよいとのこと。
{ "name": "noderest", "version": "1.0.0", "description": "", "main": "index.js", "type": "module", /* 追加する行 */ "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "express": "^4.17.3" } }
ようやく動きました。
参考
写経したのはこちらのページです。
その他の参考サイト