環境設定
node.js最新版を取得
% cp .gitconfig .google-cloud-gui-db.json .nuxtrc .viminfo .yarnrc .zprofile .zshenv .zshrc dot_files.bk/dot2022_08_14
% nvm install --lts
% nvm ls
% node --version
v16.16.0
プロジェクトフォルダ作成
% mkdir inflation && cd $_
プロジェクト初期設定
% node --version > .nvmrc
% vim .nvmrc
v16.16
に編集して保存
% npm init
Enterまたはyesで答える
npmのバージョンは新しいのがあるよと言われたら
% nvm install-latest-npm
% npm --version
8.17.0
新しくpackage.jsonが作成されるはず。
% ls -a
. .. .nvmrc package.json
express開始
参考:https://expressjs.com/ja/starter/installing.html
expressパッケージをインストール
% npm install express
Hello World
アプリケーション作成開始。ここでは、app.jsファイル作成。
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => {
res.send('Hello World!')
})
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
アプリケーションを起動。
% node app.js
Example app listening on port 3000
ブラウザで http://localhost:3000/ を開き、Hello World! が表示されれば成功です。
Ctrl C で終了。
expressジェネレーターを使用
expressジェネレーターをグローバルにインストールする。
% npm install express-generator -g
npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
added 10 packages, and audited 11 packages in 2s
3 vulnerabilities (1 moderate, 2 critical)
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
なんかエラーが表示された。まあいい。
Expressアプリケーションを iron という名前で作成する。
% express --view=pug iron
create : iron/
create : iron/public/
create : iron/public/javascripts/
create : iron/public/images/
create : iron/public/stylesheets/
create : iron/public/stylesheets/style.css
create : iron/routes/
create : iron/routes/index.js
create : iron/routes/users.js
create : iron/views/
create : iron/views/error.pug
create : iron/views/index.pug
create : iron/views/layout.pug
create : iron/app.js
create : iron/package.json
create : iron/bin/
create : iron/bin/www
change directory:
$ cd iron
install dependencies:
$ npm install
run the app:
$ DEBUG=iron:* npm start
% cd iron
% la
./ ../ app.js bin/ package.json public/ routes/ views/
% npm install
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
added 124 packages, and audited 125 packages in 10s
8 packages are looking for funding
run `npm fund` for details
4 vulnerabilities (2 low, 2 high)
To address issues that do not require attention, run:
npm audit fix
To address all issues, run:
npm audit fix --force
Run `npm audit` for details.
怒られたけど以下でなおった(らしい)
% npm audit fix
% npm audit fix --force
% npm audit fix --force
アプリケーションを実行
% DEBUG=iron:* npm start
> iron@0.0.0 start
> node ./bin/www
iron:server Listening on port 3000 +0ms
ブラウザで http://localhost:3000/ をアドレスすると以下のように表示された。
Express
Welcome to Express
よし。
コメント