Express事始

Express

環境設定

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

よし。

スポンサーリンク

コメント

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