出力
初めに
以下、記事で実行するサンプルコードは以下の Git Hub で確認できます。
https://github.com/asakura-sakura/Express
出力
Express.js は HTML ページ、スクリプト、画像などのリソースをさまざまなルートで出力できます。
リソースへのアクセスはルーティングを定義することで利用できます。
ルーティングを定義するには、app.METHOD を使います。
app.METHOD
app.method(パス、ハンドラー)
app.METHOD は Express.js の app オブジェクトのメソッドを使用して定義できます。
事前に以下のように app オブジェクトを作成しましょう。
var express = require('express')
var app = express()
app.METHOD の定義には HTTP メソッドを利用でき、リクエストタイプに関係なく実行されます。
route メソッドは引数に(パス、ハンドラー)を取り、関連するルートで一致するリクエストパスが実行されたら、ハンドラーに定義したコールバック関数が実行されます。
app.METHOD の例です。
app.get('/hello', function(req, res){
res.send("Hello World!");
});
第二引数にはコールバック関数を定義し、引数としてリクエストオブジェクトとレスポンスオブジェクトを取得しています。
リクエストオブジェクトには、ユーザーのアクセス情報やリクエストパラメータが入っています。
レスポンスオブジェクトには、ユーザーに送信するレスポンスを作成できます。
実際のコードは以下の通りです。
// /出力/基本.js
var express = require('express');
var app = express();
app.get('/route', function(req, res){
res.send("Hello world");
});
app.listen(3000);
res.send("Hello world");
レスポンスオブジェクトの send()関数を使うことで、レスポンスを返すことができます。
これで実行してみましょう。
port: 3000 で起動しているので、http://localhost:3000/route でアクセスしましょう。
app.listen(3000)
HTTP メソッドの使い分け
app.METHOD にはそれぞれ HTTP メソッドに対応するリクエストを受け付けることができます。
前項では試しに GET メソッドを試してみましたが、他に以下のようなリクエストを受け付けることが可能です。
リクエストメソッド | 利用ケース |
GET | リソースの取得 |
POST | リソースの追加 |
PUT | リソースの更新/追加 |
DELETE | リソースの削除 |
HEAD | ヘッダ情報の取得 |
CONNECT | プロキシサーバに通信を開始してもらう |
OPTIONS | サーバのオプションの確認 |
TRACE | リクエストがどんな経路で届いたか確認 |
終わりに
簡単な出力を試してみました。これを利用することで API サーバーなどの作成を行うことができます。