copyright astd.io © 2015. Diberdayakan oleh Blogger.

NodeJS: Hello World

Ok dipertemuan kali ini ayo kita buat sebuah Wep App yg sangat sederhana, saking sederhananya Web App ini hanya dapat mencetak ‘Hello World’ pada browser, ok langsung saja.


Disini saya akan menggunakan sebuah module dari NodeJs yaitu ‘http Module’. disini kita akan menggunakan http module hanya untuk membuat sebuah server yang akan menhandle request dari Client/Browser yang nantinya kita akan mengirimkan Response balik berupa kalimat ‘Hello World’ yang ditampilkan di layar browser.

Untuk source code:


Var http = require(‘http’);

http.createServer(function(req, res) {
  res.writeHead(200, {
    ‘Content-Type’: ‘text/plain’
  });
  res.end(‘Hello World.’);
}).listen(300);

console.log("Server running at http://localhost:3000");

Dan simpan code tersebut dengan nama server.js

Kemudian buka terminal/cmd dan pindah ke directori dimana kamu menyimpan file server.js kemudian ketikan perintah berikut:







Saya akan jelaskan source code diatas.
pertama kita me require module ‘http’ yang module tersebut disimpan dalam variable yang kita buat bernama http,

Kemudian kita menggunakan createServer() method yang ada di http module untuk membuat sebuah server object method ini membutuhkan satu argument yaitu sebuah callback function, dan callback function memiliki dua parameter req dan res.
req digunakan untuk mendapatkan informasi tentang request yang dibuat oleh client/browser seperti http://localhost/image.jpg yang berarti saya meminta image.jpg pada server localhost.. 
Sedangkan res digunakan untuk mengirimkan HTTP response.
Kemudian, kita menggunakan method writeHead(status, {}) yang ada pada res object, writeHead() berfungsi untuk menset header dari HTTP response yang akan server kirimkan pada client/browser dan disini kita menset status kode menjadi 200 yang berarti ‘success’/'ok' dan pada argument ke dua kita memasukan object yang berisi ‘Content-Type’: ‘text/plain’ yang berarti kita menset content type yang akan dikirimkan oleh server kepada client/browser yang dalam hal ini adalah ‘text/plain’ kamu juga bisa menset ‘Content-Type’ nya ke ‘text/html’ sehingga jika kita ganti res.end(‘Hello World’) menjadi res.end(‘<h1>Hello World</h1’) maka akan menampilkan heading1 dengan tulisan Hello World.

untuk lebih jelas tentang status code & header silahkan baca:

Kemudian res.end() method digunakan untuk mengakhiri response yang dikirimkan pada user.
Note: jika res.end() tidak dipanggil maka server tidak akan berhenti mengerimkan response kepada client/browser yang mengakibatkan page akan terus mereload yang ditandakan dengan icon reload pada browser yang terus berputar tanpa henti dan untuk melihatnya silahkan hapus baris yang berisikan 
res.end(‘Hello World’);
Setelah itu restart servernya dengan menjalankan perintah berikut pada terminal/cmd:
Jika server yang lalu masih berjalan hentikan dengan menekan ctrl+c dan jalankan perintah diatas.
Di res.end() kita memberikan nilai string berupa ‘Hello World’ sebagai argument dan hal yang kita lakukan ini adalah optional jadi kita bisa saja mengakhiri response dengan hanya menuliskan res.end() tanpa memberikan ‘Hello World’ sebagai argument res.end(‘Hello World’). Dan method yang saya sarankan untuk menuliskan Text pada client/browser adalah res.write(text_mu).
Dibaris terakhir kita menggunakan sebuah method dari server object yaitu listen() yang digunakan membuat server melisten pada host dan port yang kita inginkan disini kita menggunakan listen(3000) yang membuat server melisten pada host localhost dan port 3000 atau bisa dituliskan http://localhost:3000. di method listen default hostnya adalah localhost jadi kita tidak perlu menset nya lagi tapi jika host yang digunakan bukan localhost maka bisa tambahkan argument pada method listen seperti  listen(8192, ‘196.168.0.1’)  yang membuat server melisten pada host 196.168.0.1 port 8192 atau http://196.168.0.1:8192.

Nah mungkin hanya itu yang dapat saya sampaikan terima kasih telah membaca dan selamat bereksperiment dengan http module.
Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 komentar:

Posting Komentar