1. Pengantar Hapij
Hapijs adalah open source, kerangka aplikasi berbasis Node.js, yang cocok untuk membangun aplikasi dan layanan. Tujuan desainnya adalah untuk memungkinkan pengembang untuk fokus pada pengembangan logika bisnis untuk aplikasi yang dapat digunakan kembali dan memberi pengembang infrastruktur yang diperlukan untuk membangun logika bisnis aplikasi. Versi terbaru dari HAPIJS saat ini adalah versi 7.2.0.
2. Instalasi dan konfigurasi proyek HAPIJS
1. Instal perpustakaan HAPI
Instalasi Hapijs sangat sederhana, jalankan perintah berikut:
Salinan kode adalah sebagai berikut:
$ sudo npm menginstal hapi -g
[email protected]/usr/local/lib/node_modules/hapi
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected])
2. Konfigurasikan proyek
1) Buat direktori baru yang disebut myproject
Salinan kode adalah sebagai berikut:
$ mkdir myproject
$ CD MyProject
2) Jalankan perintah inisialisasi di direktori
Salinan kode adalah sebagai berikut:
$ npm init
Perintah ini menghasilkan file package.json, yang merupakan metadata proyek.
Kemudian jalankan perintah:
Salinan kode adalah sebagai berikut:
Instal $ npm -Save Hapi
Ini akan menginstal pustaka HAPI ke dalam proyek dan menulis dependensi HAPI ke package.json.
Pada titik ini, semua yang diperlukan untuk pengembangan proyek sudah siap.
AKU AKU AKU. Contoh Pengembangan
1. Buat server
Salinan kode adalah sebagai berikut:
// server.js
var hapi = membutuhkan ('hapi');
var server = hapi.server baru (3000);
server.start (function () {
console.log ('server berjalan di:', server.info.uri);
});
Pertama, kita membutuhkan perpustakaan HAPI.
Kedua, kami membuat objek server HAPI baru dan meneruskan nomor port ke objek server.
Akhirnya, objek server dimulai dan informasi log adalah output.
Untuk lebih jelasnya, ketika kami membuat objek server, kami dapat memberikan nama host, alamat IP, atau bahkan file soket UNIX, atau pipa yang terikat ke nama server oleh sistem Windows.
2. Mulai server
Jalankan perintah:
Salinan kode adalah sebagai berikut:
$ node server.js
Kunjungi http://127.0.0.1:3000/, dan browser menampilkan konten berikut:
Salinan kode adalah sebagai berikut:
{"StatusCode": 404, "error": "tidak ditemukan"}
Ini normal, karena tidak ada apa pun di server itu sendiri, jadi tambahkan logika perutean di bawah ini.
3. Logika Routing
Salinan kode adalah sebagai berikut:
// server.js
var hapi = membutuhkan ('hapi');
var server = hapi.server baru (3000);
server.route ({
Metode: 'dapatkan',
jalur: '/',
Handler: function (request, balas) {
Balas ('Halo, Dunia!');
}
});
server.route ({
Metode: 'dapatkan',
path: '/{name}',
Handler: function (request, balas) {
Balas ('halo,' + encodeuricomponent (request.params.name) + "!");
}
});
server.start (function () {
console.log ('server berjalan di:', server.info.uri);
});
Mulai server lagi:
Salinan kode adalah sebagai berikut:
$ node server.js
Dan kunjungi http://127.0.0.1:3000/, dan browser menampilkan konten berikut:
Halo, dunia!
Kunjungi http://127.0.0.1:3000/zhang San, dan browser menampilkan konten berikut:
Halo,%E5%BC%A0%E4%B8%89!
Dapat dilihat bahwa logika perutean berjalan secara normal.
Catatan:
Parameter metode ini dapat berupa metode HTTP yang valid atau tanda bintang* (mewakili metode HTTP apa pun).
Parameter jalur mendefinisikan jalur akses, yang dapat berisi parameter, parameter opsional, dan bahkan wildcard.
4. Gunakan plug-in
Saat membuat aplikasi web, kita biasanya perlu mengakses log. Untuk menambahkan output log dasar ke aplikasi, kami dapat memuat plugin yang baik di server.
1. Pasang plug-in yang bagus
Salinan kode adalah sebagai berikut:
$ sudo npm instal -save good
[email protected] node_modules/good
├── [email protected] ([email protected])
└── [email protected] ([email protected], [email protected])
2. Perbarui kode server.js
Salinan kode adalah sebagai berikut:
// server.js
var hapi = membutuhkan ('hapi');
var good = membutuhkan ('good');
var server = hapi.server baru (3000);
server.route ({
Metode: 'dapatkan',
jalur: '/',
Handler: function (request, balas) {
Balas ('Halo, Dunia!');
}
});
server.route ({
Metode: 'dapatkan',
path: '/{name}',
Handler: function (request, balas) {
Balas ('halo,' + encodeuricomponent (request.params.name) + "!");
}
});
server.pack.register (good, function (err) {
if (err) {
// sesuatu yang buruk terjadi memuat plugin
Lempar err;
}
server.start (function () {
server.log ('info', 'server berjalan di:' + server.info.uri);
});
});
Jalankan server.js, output konsol:
Salinan kode adalah sebagai berikut:
141102/161007.644, info, server berjalan di: http: // localhost: 3000
Jika kami terus mengunjungi: http://127.0.0.1:3000/liqiang
dan http://127.0.0.1:3000/
Konsol akan terus menghasilkan:
Salinan kode adalah sebagai berikut:
141102/161150.689, permintaan, http: // thinker-lq: 3000: get/liqiang {} 200 (37ms)
141102/161155.812, permintaan, http: // thinker-lq: 3000: get/{} 200 (4ms)