node js websocket dersi almak istiyorum ücret karşılığı yardımcı olabilecek var mı?
6
●186
- 05-08-2022, 05:37:02Kimlik doğrulama veya yönetimden onay bekliyor.https://www.npmjs.com/package/socket.io adresinde aslında yeterince açık.
mantığı basit aslında. server side ve client side. 2 şekilde ele alacaksınız.
server'a yukarıdaki paketi kurun.
dökümandaki şu ifade server side'dır
const server = require('http').createServer(); const io = require('socket.io')(server); io.on('connection', client => { client.on('event', data => { /* */ }); client.on('disconnect', () => { /* */ }); }); server.listen(3000);3000 portuna sahip bir server kuruyorsunuz. http://IP:3000 gibi. IP yerine domainde olabilir.
Sonra websayfanızda (client side)
<script src='https://IP:3000//socket.io/socket.io.js' onload='baglan()'></script> <script> var socket={connected:false} function baglan() { var url='https://IP:3000'; var options={ 'reconnect': true, reconnectionDelay: 500, reconnectionAttempts:"Infinity,reconnectionDelayMax:1250} socket = io.connect(url,options); socket.on("connect",function() { console.log("Socket Bağlandı!") }) } </script>Mesaj göndermek için yukarıdaki koda göre:
server side'ta client.emit("dinleyici","mesaj")
client side'ta socket.emit("dinleyici","mesaj")
mesajı almak için ise tabii listener lazım.
server side'ta yukarıdaki gibi:
client.on('event', data => { /* */ }); satırının altına üstüne farketmez ama 'connection' listenerın içine.
client.on('dinleyici', data => { /* */ }); data gelen mesajdır.
bu client side içinde aynı
socket.on("dinleyici", data => {})
gibi. fikir vermiştir umarım. dikkat etmen gereken durumlar 3000 portunu açmak. secure bağlantı için ben letsenrypt ile pfx oluşturuyorum.
biraz inceleyin, kurcalayın, karıştırın. takıldığınız yerde bilgim dahilinde buradan yardımcı olmaya çalışırım. - 05-08-2022, 05:58:40Kimlik doğrulama veya yönetimden onay bekliyor.Websocket ve socket.io farklı şeyler, karıştırmayalımncare adlı üyeden alıntı: mesajı görüntüle
- 05-08-2022, 06:01:56farkı açıklayabilir misiniz?petri adlı üyeden alıntı: mesajı görüntüle
- 05-08-2022, 06:10:01Özel mesajınıza yanıt olarak gönderdim hocam.ncare adlı üyeden alıntı: mesajı görüntüle