23.04.2023
7
Beğenme
324
Görüntülenme
Client-server arasındaki iletişimi sağlayan minimalist bir web çerçevesidir. (express)
Bu yazıda, Express.js’in HTTP sunucu desteği ve HTTP isteklerinin yönetimi üzerinde durdum. Ancak, bu sadece Express.js’in sunduğu özelliklerin bir kısmıdır. Gelecek yazılarımda, Express.js’in diğer özelliklerini örnek projelerle açıklayarak daha kapsamlı bir şekilde ele alacağım.
http request, http response
HTTP istekleri, kullanıcının web sitesinde bir sayfayı görüntülemek veya bir form göndermek gibi bir eylem gerçekleştirdiğinde sunucuya gönderilen istektir. HTTP yanıtları, sunucu kullanıcılarının isteklerine yanıt olarak gönderdiği verilerdir.
Express.js, HTTP isteklerini ve yanıtlarını yönetmek için bir dizi özellik ve fonksiyona sahiptir.
Örnek bir proje ile express.js’in temellerini iyi anlayalım. Bu projede ‘Hello World!’ yazısı içeren bir web sayfası oluşturacağız.
Package.json dosyası oluşturma
· Proje dosyası oluşturalım. Daha sonra npm init -y
ile default değerler alan package.json dosyasını oluşturalım. Package.json dosyasını daha sonra tekrar düzenleyebiliriz.
Paketleri yüklemek
· Package.json dosyasının bağımlılıklarına npm i express
komutunu kullanarak express’i dahil edelim.
· Proje geliştirme aşamasında kullanacağımız nodemon paketini kuralım. Nodemon, uygulamanın dosyalarında herhangi bir değişiklik yapıldığında otomatik olarak yeniden başlatılmasını sağlar. npm i -D nodemon
komutu ile kurulum yapılır. Package.json dosyasının ‘scripts’ alanını aşağıdaki şekilde düzenleyelim:
npm start
komutuyla kolayca çalıştırdıktan sonra uygulama dosyamızdaki değişiklik yapıldığında otomatik olarak yeniden başlatırız. Bu, süreci hızlandırır ve zaman kazandırır.Express ile sunucu kurmak
· Javascript kodlarımızı yazacağımız app.js
dosyasını oluşturalım ve express’i projeye çağıralım.
const express = require('express'); //express değişkenine express atanarak projeye çağırılır
const app = express(); //app ile express modülüne erişim sağlanılacak
· app.listen()
metodu ile belirli bir port üzerinde sunucumuzu çalıştıralım. Uygulamamız bu portu dinleyecek ve gelen isteklere yanıt verecek. app.js dosyasında alta yazılması gereklidir.
const port=9000;
app.listen(port, ()=>{
console.log(`Server is running on port ${port}`);
})
Web sayfası içeriğini yazalım
Express.js, URL isteklerine yanıt vermek için routing kullanır. Routing, bir URL isteği geldiğinde hangi işlevin çağrılacağını belirler.
app.get(path,callback)
metodu GET isteklerini yönetmek için kullanılır.
app.get('/',(req,res)=>{
res.send(`<h1>Hello World!</h1>`);
});
Fonksiyon, req
ve res
adlı iki parametre alır. req
parametresi, gelen isteğin tüm bilgilerini içerir (örneğin, isteğin URL’si), res
parametresi ise yanıt nesnesini temsil eder.
Bu yönlendirme metodu, res.send()
fonksiyonunu kullanarak basit bir metin yanıtı döndürür. send()
fonksiyonu, yanıt nesnesini temsil eden res
parametresini kullanarak HTTP yanıtı oluşturur ve istemciye gönderir.
Projeyi çalıştıralım
Terminale yazılan npm start
komutu ile proje başlatılır. Konsol ekranınızda ‘Server is running on port 9000’ yazısını göreceksiniz. Tarayıcınızın adres çubuğuna ‘http://localhost:9000/ ’ yazdığınızda ‘Hello World!’ metnini içeren bir sayfa açılacaktır.
Projenin kodlarını github hesabımda public olarak paylaştım. Dilerseniz inceleyebilirsiniz. github
Özetle express.js, kullanıcı dostu ve esnektir. Bu özellikleri web uygulamalarının hızlı ve kolay bir şekilde oluşturulmasını sağlar.
Kullanıcı yorumlarını görüntüleyebilmek için kayıt olmalısınız!