簡體   English   中英

Web應用程序的兩個客戶端之間的通信

[英]Communication between two clients of web application

假設我要從一個客戶端向另一個客戶端發送消息。 我應該如何解決這個問題? 顯然,我將不得不將此消息發送到服務器,但是下一步是什么呢? 我幾乎沒有想法,但每個想法似乎都是錯誤的。

謝謝

  1. 客戶端1-將客戶端2的消息發送到服務器
  2. Client2-檢查消息的任何時間段

要么

  1. Client2-打開Websocket到服務器。
  2. 客戶端1-將客戶端2的消息發送到服務器
  3. 服務器-將消息推送到client2

由於客戶端防火牆的原因,直接進行客戶端到客戶端的通信非常困難。

查看教程中的Java套接字

http://docs.oracle.com/javase/tutorial/networking/sockets/

另外,您不一定需要服務器。 您可以讓客戶端同時具有傳入和傳出通道,並以此方式進行操作。

所以

Client1將其傳出發送到Client2的傳入

Client2聽到其傳入消息,並響應其傳出到Client1的傳入消息

Client1聽到傳入消息

您可以使用標准的Java JMS方法在應用程序之間發送異步消息。 有關更多信息,請訪問: http : //java.sun.com/developer/technicalArticles/Ecommerce/jms/

如果通過Web應用程序表示基於HTTP,則必須知道HTTP是基於請求的協議。 換句話說,服務器僅響應來自客戶端(大多數情況下為瀏覽器)的HTTP請求,因此,在客戶端發送消息后,所有想要接收該消息的其他客戶端都必須請求它,即make對服務器的請求。 通常,這是使用自動刷新的HTML頁面來實現的。

暫無
暫無

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

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