Sebelumnya kita sudah mencoba untuk membuat server nodejs dan menjalankan nya, bisa dicek di post ini. Dan sekarang kita akan belajar cara parsing data menggunakan nodejs. Kita akan gunakan file yang sebelumnya pernah dibuat oleh karena itu jika belum punya, silahkan baca dulu post sebelumnya.
Parsing data request path
Untuk mendapatkan path request kita akan menggunakan library ‘url’. Tambahkan library url pada file server.js
//gunakan library url var url = require('ur');
Lalu lakukan proses parsing request pada callback createServer.
//buat variabel server untuk handle request dan respon var server = http.createServer(function(request, respon) { //get url request var urlParse = url.parse(request.url, true); //get path var path = urlParse.pathname; //trim path, hilangkan slash pada root var trimmedPath = path.replace(/^\/+|\/+$/g, ""); //kirim respon respon.end("request path : " + trimmedPath); });
Jalankan server lalu gunakan browser untuk mengakses url berikut ini http://localhost:3000
dan http://localhost:3000/dogol
Parsing data http method
Hal selanjutnya yang akan kita coba adalah memparsing http method yang direquest oleh user. Http method dapat kita ketahui melalui object request pada parameter calback createServer. Tambahkan skrip berikut sebelum mengirimkan respon pada client.
//get http method var method = request.method; //kirim respon respon.end("request path : " + trimmedPath + "\nMethod : " + method);
Coba restart servernya, lalu gunakan postman atau sejenisnya untuk mencoba request dengan berbagai macam method.
lalu test method post.
Parsing data query string
Query string adalah parameter yang ditambahkan pada url biasanya diawali dengan tanda tanya
?foo=bar
. Pada bagian ini kita akan mencoba untuk memparsing object query string. Tambahkan skrip di bawah ini pada callback createServer.
//get query string object var queryString = urlParse.query; //tampilkan log object query string console.log("\nQuery object : ", queryString);
Silahkan restart server, lalu coba akses http://localhost:300/dendy?foo=bar
pada browser. Kemudian cek terminal atau cmd.
Parsing header
Data headers bisa kita dapatkan dari object request yang dikirimkan sebagai parameter callback method createServer. Tambahkan skrip di bawah ini untuk memparsing data headers setiap request yang diterima.
//get headers var headers = request.headers; //tampilkan headers pada log console.log("\nHeaders : ", headers);
Sekarang restart server lalu akses aplikasi menggunakan browser, lalu cek log pada terminal atau cmd.
Jika ingin melakukan test parsing headers lebih lanjut silahkan gunakan postman, lalu tambahkan header pada setiap request untuk melihat perbedaan nya.
Oke, Bahasan parsing data menggunakan nodejs saya cukupkan sampai di sini dulu. Sebetulnya masih ada satu lagi yang harus dibahas yaitu parsing data body request atau payload yang akan bermanfaat saat kita membangun API untuk kebutuhan komunikasi data, insya Allah nanti akan kita bahas pada post berikutnya ya.
note : tambahan bahan bacaan mengenai headers :
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers