簡體   English   中英

具有HTML5客戶端的Java WebSocket服務器-是否需要socket.io?

[英]Java WebSocket server with HTML5 client - is socket.io necessary?

我想創建一個HTML5 MMORPG游戲。 為此,我需要客戶端和服務器之間的低延遲通信。 由於選擇了HTML5客戶端技術,因此很明顯,我將使用JavaScript開發游戲。 我發現有一個名為socket.io的引擎,它使客戶端和服務器之間的通信成為可能。

但是我不想用JavaScript編寫服務器。 原因之一是我不想打開代碼以防止作弊。 我的選擇是對服務器使用C ++或Java。 在我看來,使用Java更容易(我對C#更為熟悉,我想這會在這里對我有所幫助)。

我現在的問題是結合Java WebSocket(服務器)和socket.io (客戶端)。 但是...我已經使用帶有HTML5客戶端(沒有socket.io!)的Java WebSocket創建了一個測試應用程序,並且通信正常。 所以我有幾個問題:

  1. 我需要socket.io嗎? 如果是,為什么? 使用通過Java WebSocket默認項目創建的默認代碼有什么區別?

  2. 如果需要socket.io,如何將socket.io與Java WebSockets結合使用? 我發現了有關它的文章( https://oneminutedistraction.wordpress.com/2013/08/12/marrying-socket-io-client-with-java-ee-7s-websocket/ ),但是它沒有用。 我真的不知道為什么。 我發現,默認情況下,socket.io嘗試連接到webservice-url/socket.io ,您可以更改它。 我進行了更改,現在在JavaScript控制台中出現了更多錯誤。 但是我沒有建立連接的事件觸發器。 所以我猜,它沒有用。

  3. 可選問題 )我可以僅使用socket.io並使服務器代碼安全嗎? 這樣沒人能讀代碼嗎? 我猜不會? 還是有其他方法可以解決我的問題? 我仍在尋找最適合我的情況的技術。

Socket.io支持Web客戶端和服務器之間的實時雙向通信。 他們已經解決了您尚未遇到的問題。 他們服務器的節點實現非常容易理解。 此外,還有幾種客戶端實現可用: Android客戶端Java客戶端

嘗試使用他們的示例聊天應用程序來提高自己的能力:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM