繁体   English   中英

通过套接字在客户端之间交换文件

[英]exchange files between clients via socket

如何通过套接字将文件从一个客户端(A)发送到另一个客户端(B)? 反之亦然,将文件从B发送到A。我的意思是使客户端发送方和接收方同时进行。 换句话说,当muticlient连接到服务器时,如何区分客户端?

这是使用客户端ID(即每个用户的唯一long或string或其他任何字符串)管理客户端的好方法。 在与套接字客户端连接时,发送其id,即集合中的存储。 并且当用户(客户端)要发送文件时,要发送自己的ID和该用户(客户端)的ID。

简而言之,您需要以简单的协议实现自己的通信消息格式。

您可以在共享列表/映射中保留所有活动套接字的列表,并根据消息中的请求选择apt客户端并将所需消息推送到该客户端。

您可以根据需要实现实际的消息格式,但这可以是蓝图。 在这种情况下,可以说您的客户A发送消息:1.客户ID 2.文件开头3 X。 文件内容4.文件结尾

建立连接后,您将立即获得目标客户端ID,文件开始消息可让您了解仅需要将下一条消息转移到目标,而文件结束消息将定义传输完成。

另外,您可能希望从服务器向客户端发送确认消息,以消除传输问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM