Event-machine ve Ruby'yi kullanma. Şu anda bir oyun yaptım, dönüşün sonunda diğer kullanıcının orada olup olmadığını kontrol ediyordu. Ws.send() kullanarak kullanıcıya veri gönderirken, kullanıcının gerçekten veri aldığını veya alternatif bir çözüm olup olmadığını nasıl kontrol edebilirim?Ruby websocket Kullanıcının olup olmadığını kontrol edin
cevap
Kitaplık, temeldeki protokol öğelerine erişim sağladığından, bunu yapmak için uygulama protokolünüze öğe eklemeniz gerekir. Tipik bir yaklaşım, her bir mesaja bir tanımlayıcı ve bu tanımlayıcıları içeren onay mesajlarına sahip mesajlara yanıt eklemektir.
Böyle bir yaklaşımın, yalnızca bir istemci tarafından alınanlar hakkında daha iyi bir fikre sahip olmanıza yardımcı olacağını unutmayın. Hata durumunda belirli bir devletin güvencesi yoktur. Bir örnek, bir ACK gönderildikten sonra müşteriden sonra bir bağlantıyı kaybedecektir, ancak servis bunu almadı. Daha önce bahsettiğim karmaşıklığın bir sonucu olarak, çoğu işlemin idempotent - sisteme zarar vermeden tekrarlanabilmesi ve hata durumları sırasında/sonrasında tekrar tekrar oynatılabilmesinin çoğu kez denemek çoğu zaman daha kolaydır. Ek olarak, verilerin/bağlantının kaybedilmesiyle ortaya çıkan küçük hataların uzun vadede devam etmesini önlemek için ilgili durumu periyodik olarak senkronize etmenin bir yolunu bulabilirsiniz.
Başparmak döndürdü. Sorunun cevabını buldum soket kapalı veya açık olup olmadığını belirlemek için socket.state kullandım ve bu yanıtı harekete. – ninetailschris
- 1. Kullanıcının cihazında Twitter uygulamasının mevcut olup olmadığını kontrol edin
- 2. Kullanıcının db üzerinde var olup olmadığını kontrol edin Strongloop
- 3. Yalancı olup olmadığını kontrol edin
- 4. Görüntülerin yüklü olup olmadığını kontrol edin?
- 5. Yolun ağda olup olmadığını kontrol edin
- 6. Öğenin selenyumda tıklanabilir olup olmadığını kontrol edin
- 7. Tablonun var olup olmadığını kontrol edin C#
- 8. Türün bir arabirim olup olmadığını kontrol edin
- 9. Uzak makinede dosya olup olmadığını kontrol edin
- 10. Anahtarın sözlükte olup olmadığını kontrol edin. Değilse,
- 11. FinderSync uzantısı seçili olup olmadığını kontrol edin
- 12. Rest API'da kayıt olup olmadığını kontrol edin.
- 13. Java'da ResultSet boş olup olmadığını kontrol edin
- 14. Bir sayfanın açık olup olmadığını kontrol edin
- 15. img'nin src olup olmadığını kontrol edin
- 16. Ortam değişkeni ayarlanmış olup olmadığını kontrol edin
- 17. javascript css taşma olup olmadığını kontrol edin
- 18. $ viewContentLoaded Başarılı olup olmadığını kontrol edin
- 19. Makinemin internet erişimi olup olmadığını kontrol edin
- 20. Kaydedilecek bekleyen değişiklikler olup olmadığını kontrol edin
- 21. Tablo üzerinde kısıtlama olup olmadığını kontrol edin
- 22. Veri çerçevesinin mevcut olup olmadığını kontrol edin
- 23. CSS @media Webkit olup olmadığını kontrol edin
- 24. Öğenin animasyonlu olup olmadığını kontrol edin CSS3
- 25. Java'da sürekli değişiklik olup olmadığını kontrol edin?
- 26. Nesnenin nesne listesinde olup olmadığını kontrol edin
- 27. Stdin boş olup olmadığını kontrol edin
- 28. Listenin bir türü olup olmadığını kontrol edin?
- 29. Sayısal dizinin maskelenmiş olup olmadığını kontrol edin
- 30. Dize sayısal olup olmadığını kontrol edin
Genellikle, uzaktan kumandanın sıkışıp kalmadığını kontrol etmek için soketin üzerinden ping işlemi yapmanız gerekir. – tadman
Ping'in yanıt olup olmadığını kontrol etmek için bir geri çağırma var. Doğru ya da yanlış gibi mi? – ninetailschris