Fastify.js ile WebSocket Entegrasyonu Nasıl Yapılır
Fastify.js ile WebSocket Entegrasyonu Nasıl Yapılır
Giriş
Gelişen web teknolojileriyle birlikte gerçek zamanlı uygulamalara olan talep artıyor. Fastify.js, Node.js tabanlı, hızlı ve düşük kaynak tüketen bir web framework'üdür. Fastify.js ile WebSocket entegrasyonu sayesinde anlık bildirimler, sohbet uygulamaları ve canlı veri akışı gibi dinamik özellikler oluşturabilirsiniz. Bu makalede, Fastify.js ile WebSocket entegrasyonunun nasıl kolayca yapılabileceği adım adım anlatılacaktır.
Fastify.js ile WebSocket Entegrasyonu
Gerekli Paketlerin Kurulumu
WebSocket desteği için popüler fastify-websocket paketini kullanacağız. Öncelikle terminalde şu komutu çalıştırarak projeye Fastify ve eklentisini ekleyin:
npm install fastify fastify-websocket
Temel Sunucu Kurulumu
Fastify.js ile basit bir WebSocket bağlantısı kurmak için aşağıdaki örneği inceleyebilirsiniz. Sunucu, WebSocket üzerinden gelen mesajı alır ve client'a geri gönderir (echo yapar).
const fastify = require('fastify')();
const websocket = require('fastify-websocket');
fastify.register(websocket);
fastify.get('/ws', { websocket: true }, (conn, req) => {
conn.socket.on('message', message => {
// Gelen mesajı ekrana yaz
console.log('Alınan mesaj:', message.toString());
// Aynı mesajı client'a geri gönder
conn.socket.send('Echo: ' + message);
});
});
fastify.listen({ port: 3000 }, err => {
if (err) throw err;
console.log('Fastify.js WebSocket sunucusu 3000 portunda çalışıyor');
});
WebSocket Client Eklemek
Basit bir HTML sayfası ile Fastify.js WebSocket sunucusuna bağlantı kurmak için aşağıdaki örnek kullanılabilir:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<title>Fastify.js WebSocket Entegrasyonu</title>
</head>
<body>
<input type="text" id="mesaj" placeholder="Mesajınızı yazın">
<button onclick="gonder()">Gönder</button>
<div id="cevap"></div>
<script>
const soket = new WebSocket('ws://localhost:3000/ws');
soket.onmessage = function(e) {
document.getElementById('cevap').textContent = e.data;
};
function gonder() {
const veri = document.getElementById('mesaj').value;
soket.send(veri);
}
</script>
</body>
</html>
Sonuç
Fastify.js ile WebSocket entegrasyonu, sunucu ve istemci arasında çift yönlü, düşük gecikmeli haberleşme sağlar. Bu entegrasyonun sağladığı hız ve sade kod yapısı sayesinde anlık veri akışının gerekli olduğu projelerde Fastify.js tercih edebilirsiniz. Fastify.js ile WebSocket bağlantılarının kurulumu hızlı ve esnektir. Bu temel yapı üzerine, ölçeklenebilir ve güvenli gerçek zamanlı uygulamalar geliştirebilirsiniz.

Yorum Gönder