Bir Sonraki Web Uygulamanız İçin Node.js ve WebSockets Teknolojilerini Birleştirmek

Node.js ve WebSocket, gerçek zamanlı bağlantı için popülerdir. Canlı sohbet ve yayın gibi uygulamalarda kullanılır.

Efe Demir

Efe Demir

5 June 2025

Bir Sonraki Web Uygulamanız İçin Node.js ve WebSockets Teknolojilerini Birleştirmek

Node.js Websockets, bir araya getirildiğinde, web geliştiricilerinin gerçek zamanlı web uygulamaları oluşturmak için kullanabileceği iki popüler teknolojinin birleşimidir.

💡
Apidog, API geliştiricileri ekipleri için işbirliği faktörünü sağlarken, API'leri daha hızlı oluşturmaya odaklanan bir API geliştirme aracıdır. Apidog ile tüm API yaşam döngüsü için özellikler ve değişiklik işlevleri bekleyebilirsiniz.

Ayrıca, çeşitli türlerde dosya içe aktarımını işleyebilen bir API platformuna ihtiyacınız varsa, Apidog'u indirmeyi düşünün! 👇 👇 👇
button

"Node.js WebSockets"in, gerçek zamanlı web uygulamaları oluşturmak için işbirliği içinde kullanılan iki farklı teknolojiye atıfta bulunduğunu anlamak çok önemlidir. Bunlar tek bir varlık olarak kabul edilmemelidir. Daha fazla uzatmadan, önce Node.js ve WebSockets'in özünde ne olduğunu anlayalım.

Node.js Nedir?

Node.js, kullanıcılarının JavaScript kodunu bir web tarayıcısının dışında çalıştırmasına olanak tanıyan, açık kaynaklı, platformlar arası bir JavaScript çalışma zamanı ortamıdır. Bu nedenle Node.js, JavaScript kodlamasından yararlanabilecek çeşitli yazılım uygulamalarını ve sistemleri sınırlamaz!

nodejs website ai tool javascript
Node.js'i denemekle ilgileniyorsanız resme tıklayın!

Node.js'i Geliştiriciler İçin Cazip Hale Getiren Temel Özellikler

Projeleriniz İçin Ne Zaman Node.js Kullanmayı Düşünmelisiniz?

Node.js, öncelikle geleneksel web sayfalarının ötesinde yazılımlar oluşturmak için bilinir. Bu nedenle, yazılımınızın bir parçası olarak aşağıdaki kullanım durumlarına sahip olmayı planlıyorsanız, Node.js kullanmayı şiddetle düşünebilirsiniz:

Yazılımınızın Bir Parçası Olarak Node.js Kullanmanın Faydaları

WebSockets Nedir?

WebSockets, bir istemci (bir web tarayıcısı gibi) ve bir sunucu arasında gerçek zamanlı, karşılıklı iletişim sağlayan bir iletişim protokolüdür. Ayrıca, hem istemcilerin hem de sunucuların aynı anda mesaj göndermesini ve almasını sağlayarak, yazılım için daha etkileşimli ve duyarlı bir deneyim sağlar.

WebSockets'in bir protokol olduğunu unutmayın, yani herhangi bir dosya türüne girmezler. Ancak, yine de bir WebSocket'in güvenliğine dikkat etmeniz gerekir!

WebSockets'i Diğer Protokollerden Ayıran Temel Özellikler

WebSockets Kullanmaktan Elde Edebileceğiniz Potansiyel Faydalar

Web Uygulamaları Oluşturmak İçin Node.js ve WebSockets Nasıl Birleştirilir?

İşte Node.js ve WebSockets ile gerçek zamanlı web uygulamaları oluşturmaya yönelik adım adım bir kılavuz!

  1. Bir kitaplık seçin:

Node.js'de WebSockets'i uygulamanıza yardımcı olması için seçebileceğiniz birkaç popüler kitaplık vardır:

2. Node.js sunucunuzu ayarlayın:

http veya express gibi modülleri kullanarak bir Node.js sunucusu oluşturun. Bu sunucu, gelen bağlantıları dinleyecek ve yönlendirme ve diğer sunucu tarafı mantığını işleyecektir.

3. WebSocket'i uygulayın:

Bu adımda, farklı senaryolar için olay işleyicileri de tanımlamalısınız:

4. İstemci tarafı entegrasyonu:

İstemci tarafında (genellikle bir web tarayıcısında), WebSocket sunucunuza bağlanmak için ws veya socket.io-client gibi JavaScript kitaplıklarını kullanabilirsiniz.

Node.js ve WebSockets'in Kod Parçacığı (Temel Sohbet Uygulaması Örneği)

Bugün bulabileceğiniz çoğu web uygulamasının ilgili ön ve arka uç kısımları vardır. İşte basit bir sohbet uygulaması örneğinde birlikte çalışan hem Node.js hem de WebSockets teknolojilerinin örnekleri.

Sunucu tarafı (Arka uç) Kodu [Node.js]

const WebSocket = require('ws');

const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', (ws) => {
  console.log('Client connected');

  ws.on('message', (message) => {
    console.log(`Client message: ${message}`);
    wss.clients.forEach((client) => {
      if (client.readyState === WebSocket.OPEN) {
        client.send(message);
      }
    });
  });

  ws.on('close', () => {
    console.log('Client disconnected');
  });
});

console.log('WebSocket server listening on port 8080');

Kod Açıklaması:

İstemci tarafı (Ön uç) Kodu [Javascript]

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>WebSocket Chat</title>
</head>
<body>
  <input type="text" id="message" placeholder="Type your message..." />
  <button id="send">Send</button>
  <div id="messages"></div>

  <script>
    const ws = new WebSocket('ws://localhost:8080');

    ws.onopen = () => {
      console.log('Connected to server');
    };

    ws.onmessage = (event) => {
      const message = event.data;
      console.log(`Received message: ${message}`);
      const messagesDiv = document.getElementById('messages');
      messagesDiv.innerHTML += `<p>${message}</p>`;
    };

    const sendButton = document.getElementById('send');
    sendButton.addEventListener('click', () => {
      const messageInput = document.getElementById('message');
      const message = messageInput.value;
      ws.send(message);
      messageInput.value = '';
    });
  </script>
</body>
</html>

Kod Açıklaması:

Node.js ve WebSockets ile API'ler Oluşturma (Kod Parçacıklarıyla Gösterilir)

Ayrıca, yeni oluşturduğunuz web uygulamanız içinde kullanmak üzere kendi API'lerinizi de oluşturabilirsiniz! (Lütfen bu makalede sağlanan kodun yalnızca gösterim amaçlı olduğunu unutmayın.)

1. Node.js Ortamını Ayarlayın:

2. Gerekli Kitaplıkları Yükleyin:

Bu kod satırını çalıştırarak WebSockets için ws kitaplığını yüklemeniz gerekecektir: npm install ws. Ayrıca, bu kod satırını kullanarak Express aracılığıyla Express gibi yönlendirme ve HTTP isteklerini işlemek için bir web çerçevesi yüklemeniz gerekecektir: npm install express.

3. WebSocket Sunucusunu Oluşturun (JavaScript):

const WebSocket = require('ws');
const express = require('express'); // If using Express

const app = express(); // If using Express
const wss = new WebSocket.Server({ port: 8080 });

// HTTP request handling (if using Express)
app.get('/', (req, res) => {
  res.send('Hello, world!');
});

// WebSocket connection handling
wss.on('connection', (ws) => {
  console.log('Client connected');

  ws.on('message', (message) => {
    console.log(`Received message: ${message}`);
    // Process the message and potentially send a response
  });

  ws.on('close', () => {
    console.log('Client disconnected');
  });
});

// Start the server
app.listen(8080, () => {
  console.log('Server listening on port 8080');
});

Bu adımdan sonra, WebSocket Sunucusuna ws://localhost:8080 gibi WebSocket URL'si aracılığıyla erişebilirsiniz.

4. API Uç Noktalarını Tanımlayın (JavaScript):

ws.on('message', (message) => {
  const data = JSON.parse(message);
  const action = data.action;

  if (action === 'getData') {
    ws.send(JSON.stringify({ data: 'Some data' }));
  } else if (action === 'sendMessage') {
    // Handle message sending logic
  }
});

5. İstemci Tarafı Etkileşimini Oluşturun (JavaScript):

const ws = new WebSocket('ws://localhost:8080');

ws.onopen = () => {
  console.log('Connected to server');
  ws.send(JSON.stringify({ action: 'getData' }));
};

ws.onmessage = (event) => {
  const response = JSON.parse(event.data);
  console.log(response);
};

Apidog - İdeal Test API Platformu

Node.js WebSocket web uygulamanızı oluşturduktan sonra, amaçlandığı gibi çalıştığından emin olmak için test etmeniz gerekecektir.

Apidog, tüm API sorunlarınız için mükemmel bir hepsi bir arada çözümdür. Yalnızca bir API'nin tek uç noktalarını test etmekle kalmaz, aynı zamanda API'nizin yayınlanmaya hazır olduğundan emin olmak için çok adımlı bir test senaryosu da oluşturabilirsiniz!

apidog api design first development platform
Apidog - Tasarım Öncelikli Geliştirme Platformu

Bu makalenin ws://localhost:8080 URL'sini kullandığı gibi, WebSocket sunucunuz zaten URL'de çalıştığına göre, bir WebSocket isteği oluşturmaya başlayabiliriz!

Apidog Kullanarak Bir WebSocket İsteği Oluşturma

create new api request apidog
Apidog Kullanarak Yeni Bir WebSocket İsteği Oluşturun

İlk olarak, Node.js WebSocket API'nizi veya uygulamanızı test etmek için yalnızca yeni bir API isteği oluşturun. Ayrıca, yeni bir istek anında oluşturmak için Ctrl + T kısayolunu da kullanabilirsiniz.

insert details api request apidog
Yeni WebSocket İsteğinizin Ayrıntılarını Doldurun

Boş, adsız bir istek görebilmelisiniz. Burada, belirli bir API URL'si oluşturabilir, istenen HTTP yöntemini ayarlayabilir ve Node.js WebSocket API'nizi veya uygulamanızı test etmeyi planladığınız sorgu parametrelerini ekleyebilirsiniz.

Sonuç

Node.js ve WebSocket teknolojilerinin birleşimi, geliştiricilerin ilginç ve kullanışlı uygulamalar oluşturmasını sağlayabilir. Özellikle gerçek zamanlı sohbet odaları ve canlı yayın gibi işlevleri etkinleştirmede güçlüdürler!

Apidog ayrıca, gerektiğinde WebSocket isteklerinin oluşturulmasını ve değiştirilmesini de sağlayabilir. Kullanıcılar, isteklerin yanı sıra Apidog ile API'ler oluşturabilir, test edebilir, hata ayıklayabilir ve taklit edebilir.

Explore more

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Yapay zeka hızla gelişiyor. FractalAIResearch/Fathom-R1-14B, 14.8 milyar parametreyle matematik ve genel akıl yürütmede başarılı.

5 June 2025

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code'u keşfedin: Kurumsal kullanıma özel, en özelleştirilebilir yapay zeka destekli kodlama asistanı.

5 June 2025

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code, 2025'te yapay zeka destekli kodlamayı nasıl devrimleştiriyor? Özelliklerini, kullanımını ve Windsurf kısıtlamalarından sonra neden popüler olduğunu öğrenin. Geliştiriciler için okunması gereken!

5 June 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin