Node.jsで超簡単にサーバー構築 & IntelliJのエディタで簡単にRESTリクエストを送る方法

フロントエンドの開発をしている時に、サーバーにRESTリクエストを送りたい時があります。

cURLで実行するのも良いですが、IntelliJの機能で簡単にリクエストを送ることができ、ファイルにリクエストを保存できるので便利です。

なおVSCodeでもREST Clientという拡張を入れれば同じようなことが可能なようです。

今回は超簡単なサーバーの構築方法(約5分)とIntelliJからリクエストを送る方法をご紹介します。

※前提としてnode.jsとnpmの基本的な知識があるとします。

Fastifyで簡単にサーバーを構築してみる

検証するためにローカル環境に簡単なサーバーを構築します。5分くらいでできます。

今回はFastifyというNode.jsのフレームワークを使います。

プロジェクトフォルダの作成

以下のコマンドを実行します。

mkdir rest-test

プロジェクトに移動します。

cd rest-test

プロジェクトを初期化します。package.jsonというファイルができます。

npm init -y

以下の二つのコマンドを実行し、必要なモジュールをインストールします。

npm install fastify
npm install -D nodemon

package.jsonファイルを編集し、scriptsのところにstartを定義します。

{
  "name": "fastify-api",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node server",
    "dev": "nodemon server"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "fastify": "^3.19.2"
  },
  "devDependencies": {
    "nodemon": "^2.0.12"
  }
}

server.jsを作成します。

touch server.js

server.js に以下をコピペします。

const fastify = require('fastify')({logger: true})
const PORT = 5000

fastify.get('/tami', (req, res) => {
  res.send({name: 'tamibouz'})
})

const start = async () => {
  try {
    await fastify.listen(PORT)
  }catch(error){
    fastify.log.error(error)
    process.exit(1)
  }
}

start()

以下のコマンドを実行してサーバーを起動させます。

npm run dev


// 以下のようなメッセージがでればOKです。
[nodemon] 2.0.12
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node server.js`
{"level":30,"time":1627172881840,"pid":59682,"hostname":"usernoMacBook-Pro.local","msg":"Server listening at http://127.0.0.1:5000"}

IntelliJからRESTリクエストを送る

scratch.http というファイルを作成し、以下をコピペします。

GET http://localhost:5000/tami
Accept: application/json

行のところの緑の右矢印をクリックすると、run localhost:5000 というメッセージがでるので、それをクリックします。

エディタの下もしくは右に結果が表示されます。