npm/nodeの試行錯誤「expressとmongodbの処理をどこに入れるか?」

徒然草2.0

useradd user01
su user01
# passwordの変更
npm install

npm WARN deprecated Express@3.0.1: Package unsupported. Please use the express package (all lowercase) instead.
myapp@1.0.0 /home/user01/Xxxxxx
mqq Express@3.0.1

npm WARN myapp@1.0.0 No description
npm WARN myapp@1.0.0 No repository field.

こんな感じのがでてきました。現時点のバージョン4.17.1のようなので古いということでしょうか…。jsonはコメントアウトできないらしいのでとりあえずコメントアウトして「npm install」した。

それからさっきよりは上手く行ったっぽいので「npm app.js」を実行

DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
events.js:160

なんかmongoクライアントにオプション設定しないといけないらしい。

設定したら…違うエラーが。

body-parser deprecated undefined extended: provide extended option app.js:10:17

「app.use(express.urlencoded());」のところでエラーになっている。

app.use(express.json());
app.use(express.urlencoded());

を、

app.use(express.json());
app.use(express.urlencoded({ extended: true }));

に書き換えたら直った。

次にサーバ起動できたけどアクセスするとでるのがこれ。

Error: No default engine was specified and no extension was provided.

エラー:デフォルトのエンジンが指定されておらず、拡張子も指定されていません。

…なんのこっちゃ。

いろいろあったけどmongodbのcallバック地獄になったけど値を取得できた…。

目的のデバッグが出来たので了。

参考URL

npmとpackage.json - Qiita
npm パッケージ管理ツール JavaScript(Node.js)のパッケージやモジュールをインストール、アップデート、共有したりできる npmレジストリに登録された様々な外部ライブラリやパッケージをインストールすることがで...
express
Fast, unopinionated, minimalist web framework

 

コメント

タイトルとURLをコピーしました