Networking 客户机-服务器-如何识别两种不同的方法
我正在为客户机服务器编写代码,有两种可能 用户将请求发送特定信息a 用户将请求发送特定信息B 我想确定客户机在我的服务器端需要什么,以及客户机将如何做到这一点Networking 客户机-服务器-如何识别两种不同的方法,networking,client-server,Networking,Client Server,我正在为客户机服务器编写代码,有两种可能 用户将请求发送特定信息a 用户将请求发送特定信息B 我想确定客户机在我的服务器端需要什么,以及客户机将如何做到这一点 还有其他想法吗 根据信息的大小,您始终可以通过一个管道传输这两个信息,然后在用户端解密所需的信息 string data = // .. data transmitted. string[] dataSplit = data.Split(SEPARATOR); // dataSplit[0] is type of information
还有其他想法吗 根据信息的大小,您始终可以通过一个管道传输这两个信息,然后在用户端解密所需的信息
string data = // .. data transmitted.
string[] dataSplit = data.Split(SEPARATOR);
// dataSplit[0] is type of information
switch(dataSplit[0]) {
case 'Name':
...
break;
case 'OS':
...
break;
}
你明白吗?我知道这是一个很老的问题,但我认为最好使用设计模式 其思想是,您可以使用单个端口将请求发送到
接收器1
,接收器1
将决定是否可以处理此请求,如果不能,将请求传递给接收器2
,接收器2
将必须执行相同的决定,如果可以处理请求,然后将响应发送回发送方
因此,我们具有以下特性:
发送方
(或者换句话说,客户端)只知道第一个接收方最终
响应的响应,或者如果请求发送没有负责处理它的类,则可以添加默认响应
UML
示例
是;谢谢,但这并不意味着这是一个字符串。。这并不意味着我可以在这些信息上进行字符串切片嘿,你不需要两个不同的端口。您必须从客户端向服务器发送两种不同类型的消息。我不知道你在用什么协议。如果是您自己的TCP套接字协议,则可以使用TLV格式(类型、长度、值)。如果使用HTTP,则可以为不同的REST资源使用两个不同的端点。