簡體   English   中英

處理具有相同IP的多客戶端中的服務器的接收值

[英]Handle receive values from server in multi clients with same IP

我想連接到具有多個客戶端的服務器和同一計算機中的一些客戶端以及相同的IP地址。 我的意思是,在我的應用程序中,用戶可以以不同的形式連接到服務器並同時從服務器獲取值。 我閱讀了有關多客戶端的更多信息,但它們都是關於不同計算機或不同應用程序中的多客戶端。 我認為,我處理客戶端服務器收到的值,其中包含保存連接客戶端的字典和隊列中設置的每個接收值,如果沒有運行任何接收到的值,則從隊列等獲取數據,但我不知道我怎么知道這個收到的值是客戶的請求。 我試着解決這個問題大約3天,我不能。 如果你能幫幫我的話

當你對它有疑問時,最好指定你的平台,環境和......一般來說,沒有什么不同。 順便說一句,我認為它是.Net。

.Net平台

如果您進行套接字編程,並且您想要識別來自同一計算機/ IP中的多個客戶端的不同請求, Client.RemoteEndPoint來自TcpClient類的Client.RemoteEndPoint為您提供。 實際上,它由IP組成:端口和它是一個關鍵,讓你知道它是如何分開工作的,這在每種編程語言中很有可能就是這樣,因為在同一台計算機中每個端點需要具有相同的IP但不同的端口。 因此,即使在同一台計算機中,您也可以使用它作為ID(IP:端口),並可以將其用作字典中的密鑰。

一般情況

對於每個平台的一些通用方法或沒有內置框架的用法,您可以將服務器視為WebServer(我看它更復雜),但WebServer如何自行處理每個請求,即使它們是2個瀏覽器中的2個不同會話從1台電腦和1個端口? 所以你應該以這種方式實現你的代碼。 實際上,您應該在每個請求上添加一些額外的信息,並自己給它們一些獨特的信息(ID)。 然后你可以互相識別它們。

暫無
暫無

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

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