‫Video ini adalah salah satu video yang sangat menarik,
‫karena sekarang kami akan membuat server
‫web nyata pertama kami yang mampu menerima permintaan dan
‫mengirim kembali tanggapan.
‫Dan langkah pertama adalah memasukkan paket lain atau modul
‫lain, dan
‫yang ini disebut http.
‫Jadi kita menggunakan fungsi
‫require lagi, dan kemudian membutuhkan modul http bawaan,
‫dan itulah yang memberi kita kemampuan
‫jaringan seperti membangun server http.
‫Sekarang, mari kita benar-benar mengomentari kode
‫ini di sini sehingga tidak menghalangi kita.
‫Jadi mari kita membuat semacam pembagi di sini.
‫Jadi yang
‫ini diajukan, dan yang ini untuk server.
‫Dan sekarang, untuk membangun server kita, kita
‫harus melakukan dua hal.
‫Pertama, kami membuat server,
‫dan kemudian kedua, kami memulai server
‫sehingga kami benar-benar dapat mendengarkan permintaan yang masuk.
‫Kami menggunakan modul http kami dan sama seperti sebelumnya kami menggunakan
‫metode yang ada di objek itu.
‫Jadi seperti yang kita lakukan dengan modul fs.
‫Jadi, http. createServer dan
‫create server akan menerima fungsi panggilan balik, yang
‫akan diaktifkan setiap kali
‫permintaan baru mengenai server kami.
‫Dan fungsi panggilan balik ini
‫mendapatkan akses ke dua variabel yang sangat penting dan mendasar.
‫Ini adalah variabel permintaan, dan variabel respons.
‫Dan sedikit lebih banyak tentang mereka dalam sedetik.
‫Jadi, permintaan, dan
‫tanggapan, Jadi yang ingin
‫kami lakukan sekarang adalah mengirim kembali tanggapan ke
‫klien dan kami melakukannya dengan res. yang merupakan objek ini di sini, objek respons ini, . akhir, dan kemudian 'Halo
‫dari server! '. akhir, dan kemudian 'Halo dari server! '.
‫Jadi itulah respon yang akan kita kirimkan kembali.
‫Jadi sekali lagi,
‫setiap kali permintaan baru mengenai server kami, fungsi panggilan balik ini di sini
‫akan dipanggil, dan fungsi panggilan balik akan memiliki akses ke
‫objek permintaan yang menampung semua jenis hal seperti
‫url permintaan, dan banyak hal lainnya.
‫Di sisi lain, objek respons di
‫sini memberi kita banyak alat pada dasarnya untuk
‫menangani respons, jadi untuk
‫mengirimkan respons.
‫Yang paling sederhana adalah. akhir, dan ini berakhir di
‫sini, penamaan metode ini akan sedikit lebih
‫masuk akal nanti.
‫Untuk saat ini, ketahuilah bahwa ini adalah cara paling sederhana untuk mengirim kembali
‫respons yang sangat, sangat sederhana dalam kasus ini.
‫Jadi hanya itu yang harus kami
‫lakukan untuk mengirim kembali respons teks biasa ketika
‫permintaan tertentu masuk.
‫Sekarang, jika Anda agak bingung tentang semua istilah
‫ini, seperti permintaan masuk,
‫atau mengirim tanggapan, atau bahkan tentang mengapa kami benar-benar
‫memiliki permintaan dan tanggapan di sini di server kami, maka jangan
‫khawatir, karena kami memiliki seluruh kuliah yang akan datang.
‫up tentang bagaimana web bekerja di mana kita akan
‫berbicara semua tentang model client-server, dan
‫benar-benar bagaimana aplikasi jaringan bekerja secara umum.
‫Sekali lagi, di bagian ini fokus utama
‫saya adalah menunjukkan kepada Anda semua hal dan
‫benar-benar membuatnya bekerja, dan kemudian
‫teorinya akan menyusul nanti.
‫Jadi itulah filosofi yang saya gunakan
‫di semua kursus saya yang lain, dan itu
‫bekerja dengan sangat baik, jadi
‫saya percaya itu adalah hal yang baik untuk melakukannya di sini juga.
‫Bagaimanapun, membuat server adalah
‫bagian pertama, dan sekarang bagian
‫kedua adalah benar-benar mendengarkan permintaan yang masuk dari klien.
‫Sekarang, untuk melakukan itu kita sebenarnya perlu
‫menyimpan hasil createServer ini di sini ke variabel baru.
‫Jadi, kita biasa menyebutnya server, jadi server adalah
‫hasil dari metode createServer ini di sini.
‫Jadi itu akan membuat server,
‫dan sekarang kita menggunakan server itu dan di sana kita dapat memanggil mendengarkan.
‫Listen menerima beberapa parameter yang pertama adalah
‫port, dan biasanya port
‫yang kita gunakan di Note misalnya 8000.
‫Tetapi Anda akan melihat angka lain
‫seperti 3000, atau 80, atau sesuatu seperti itu.
‫Dan jika Anda bertanya-tanya apa port
‫sebenarnya, itu tidak terlalu penting, tetapi yang perlu Anda
‫ketahui adalah pada dasarnya itu adalah sub-alamat pada
‫host tertentu, dan host
‫adalah apa yang kita tentukan selanjutnya.
‫Kami sebenarnya tidak perlu menentukannya dan kemudian kami
‫akan default ke host lokal, tetapi kami
‫sebenarnya dapat menentukannya
‫juga ke host lokal secara eksplisit.
‫Jadi, host lokal biasanya memiliki alamat ini sebagai default,
‫dan host lokal berarti komputer saat ini.
‫Jadi komputer tempat program sedang berjalan.
‫Dan sekali lagi, ini
‫adalah alamat IP standar untuk host lokal tersebut.
‫Jadi yang ini di sini akan mulai mendengarkan permintaan yang masuk.
‫Jadi pada dasarnya memulai server.
‫Dan sebagai argumen opsional, kami juga dapat meneruskan
‫fungsi panggilan balik,
‫yang akan dijalankan segera
‫setelah server benar-benar mulai mendengarkan.
‫Jadi di sini, cukup biasa untuk menampilkan pesan
‫bahwa server telah dimulai.
‫Jadi katakanlah mendengarkan permintaan pada port 8000.
‫Dan sekarang yang harus kita lakukan adalah benar-benar
‫pergi ke url ini di komputer kita pada port 8000.
‫Nah sebelum kita bisa melakukan
‫itu tentunya kita harus menjalankan aplikasi Note, jadi
‫note index. js, dan di sini kita memiliki kunci kita.
‫Jadi mendengarkan permintaan pada port 8000.
‫Dan Anda melihat
‫bahwa aplikasi terus berjalan, jadi sebelum
‫aplikasi selalu langsung berhenti, aplikasi melakukan
‫tugasnya, lalu keluar dari aplikasi.
‫Saat ini tidak melakukan itu.
‫Itu karena sesuatu yang disebut
‫loop peristiwa yang akan kita bicarakan
‫nanti di bagian lain dari kursus ini.
‫Namun, apa pun alasan teknisnya,
‫jelas bahwa aplikasi tidak dapat langsung
‫keluar, karena kami tidak dapat menerima permintaan baru apa pun.
‫Jadi ketika kita memulai server, Note tidak bisa
‫begitu saja keluar dari proses jadi keluar dari
‫program, karena
‫tujuan keseluruhannya adalah menunggu permintaan masuk.
‫Jadi inilah yang akan saya tunjukkan selanjutnya.
‫Untuk saat ini, mari kita buka saja alamat IP pada port 8000.
‫Dan untuk itu kami menggunakan titik dua, dan kemudian nomor port.
‫Jadi, ini adalah host, yang merupakan host lokal,
‫titik dua, dan kemudian nomor port.
‫Tekan enter, dan ini dia.
‫Jadi, halo dari server!
‫Dan ya, itu benar-benar berfungsi.
‫Anda memiliki server web nyata yang berjalan di
‫komputer Anda menggunakan NoteJS, selamat.
‫Jadi mari kita kembali ke sini dan, sekali lagi menganalisis apa yang terjadi di sini.
‫Kami membuat server kami, menggunakan createServer
‫dan meneruskan fungsi panggilan balik yang dijalankan setiap kali
‫permintaan baru mengenai server, dan kemudian kami
‫mulai mendengarkan permintaan
‫masuk pada IP host lokal,
‫dan kemudian pada port 8000.
‫Setelah kami menjalankan semua ini, kami benar-benar melakukan permintaan
‫dengan menekan url itu.
‫Jadi pada dasarnya dengan menekan Host lokal pada port 8000.
‫Jadi, di bawah
‫kap NoteJS, sebuah peristiwa dipicu yang
‫merupakan sesuatu yang, sekali lagi, akan kita bicarakan nanti.
‫Tetapi yang penting di sini adalah bahwa
‫acara ini kemudian membuatnya sehingga fungsi panggilan balik ini dipanggil.
‫Dan akhirnya sebagai hasil
‫dari itu, kami kemudian mendapatkan kembali string ini.
‫Hanya untuk penasaran, mari kita
‫lihat objek permintaannya.
‫Kami perlu menutup server dan memulainya
‫lagi karena kami melakukan beberapa perubahan pada kode.
‫Dan perhatikan bagaimana kali ini saya benar-benar menggunakan kontrol C
‫untuk keluar dari aplikasi.
‫Jadi ingatlah bahwa pada awalnya ketika kita menggunakan
‫riak, saya menggunakan kontrol D
‫untuk keluar darinya.
‫Tapi sekarang ketika kita
‫menjalankan program Note seperti ini Kita perlu menggunakan
‫kontrol C pada dasarnya untuk keluar dari program itu.
‫Itu sebabnya di sini saya menggunakan kontrol C dan
‫sepanjang sisa
‫kursus ketika saya ingin menyelesaikan program saya
‫akan selalu menggunakan kontrol C.
‫Jadi, itu kontrol dan bukan perintah C, lagi.
‫Bahkan di Mac Anda perlu menggunakan kontrol C.
‫Mari kita lakukan ini lagi, kita mendapatkan respons yang sama,
‫tetapi sekarang kita harus memiliki sesuatu di konsol.
‫Jadi ini adalah objek permintaan, dan seperti yang saya
‫sebutkan, ada banyak hal di sini.
‫Anda melihatnya?
‫Semua ini, bahkan tidak muat di konsol.
‫Saya pikir
‫saya bahkan tidak bisa menunjukkan semua data keren yang ada di sana.
‫Sebenarnya di sini kami memiliki beberapa header, jadi kami memiliki host
‫dan di sini kami memiliki beberapa ...
‫Sekali lagi, jadi kami
‫memiliki beberapa header http, yang menurut saya akan
‫kita bicarakan di video berikutnya.
‫Bagaimanapun, yang penting di sini adalah
‫kita benar-benar mendapatkan akses ke
‫semua jenis barang ketika kita menangani permintaan dan mengirimkan tanggapan.
‫Tidak masalah di sini, mari kita
‫singkirkan ini, simpan, lalu hentikan ini, dan mulai lagi.
‫Dan sekarang untuk menyelesaikan video ini,
‫saya ingin menunjukkan kepada Anda apa yang sebenarnya akan kita
‫bangun dalam beberapa kuliah
‫berikutnya sampai akhir bagian ini.
‫Jadi ini adalah aplikasi kecil yang menyenangkan yang disebut node farm.
‫Kami memiliki beberapa produk di sini,
‫dan kami membuat semua ini di sini menggunakan template html yang sangat
‫sederhana, dan Anda kemudian dapat mengklik tautan dan
‫pada dasarnya akan
‫membawa Anda ke halaman detail untuk produk
‫ini, dalam hal ini alpukat.
‫Ini memiliki banyak data di sini, sebuah
‫tombol yang tidak melakukan apa-apa, dan kemudian kita
‫dapat kembali ke halaman tersebut.
‫Jadi, alpukat, lalu kita punya keju
‫misalnya, dan tentu saja
‫ada data yang berbeda untuk masing-masing produk ini.
‫Jadi ini memiliki desain
‫segar yang bagus dan gila untuk membuatnya sedikit
‫menonjol, dan ya, saya pikir ini adalah proyek kecil yang menyenangkan.
‫Dan kita akan mulai membangunnya,
‫tepat di video berikutnya.