hapi.js - node用のサーバフレームワーク
nodeのWebサーバフレームワークというとExpressが最も有名かも知れませんが、ちょっと汎用的すぎると感じている人もいるかも知れません。もっとWeb APIに特化したサーバフレームワークのが目的に合っていると感じる人もいるでしょう。 そんな方に使ってみて欲しいのがhapi.jsです。シンプルで使いやすいサーバフレームワークです。
hapi.jsの使い方
最も簡単なスクリプト例です。
'use strict';
const Hapi = require('hapi');
// Create a server with a host and port
const server = new Hapi.Server();
server.connection({
host: 'localhost',
port: 8000
});
// Add the route
server.route({
method: 'GET',
path:'/hello',
handler: function (request, reply) {
return reply('hello world');
}
});
// Start the server
server.start((err) => {
if (err) {
throw err;
}
console.log('Server running at:', server.info.uri);
});
サーバを作って、ルートを追加して、サーバを開始すると言う流れになります。Webブラウザでアクセスすれば、当然次のように表示されます。
hapi.js本体はごく小さく、プラグインで拡張していくのが基本となっています。認証、Swagger、多言語対応、ログイング、WebSocket、セッション管理などもプラグインとして個別に分かれています。Reactにももちろん対応しています。
hapi.jsはnode/JavaScript製、BSD Licenseのオープンソース・ソフトウェアです。