本申请涉及移动端域内通信,尤其涉及一种移动端域内通信方法、装置及存储介质。
背景技术:
1、以dds(data distribution service,数据分发服务,一种分布式实时通信中间件协议)为基础构建局域网域内通信的方案,由于dds本身采用的是发布/订阅的体系架构,因此基于dds开发的上层应用也必然遵循这一架构。但是,上述架构对于rpc(remoteprocedure call,远程过程调用)此类需要即时响应的需求,还需要处理请求应答一致的问题。
2、还有,局域网域内通信以socket为基础构建点对点的通信通道,无论采取nio还是io的方式,socket常常需要同时开发服务端与客户端,因此,开发成本较高,并且nio或者io的扩展性较差。
3、另外,接入环信等三方sdk(software development kit,软件开发工具包)做网络通信,一方面三方sdk接入会导致自身的应用过大并且无法定制化自己的需求,另一方面局域网域内通信完全不需要依赖外部网络。
技术实现思路
1、本申请提供了一种移动端域内通信方法、装置、电子设备及存储介质,以实现请求响应式且支持远程方法调用的移动端域内通信方案。本申请的技术方案如下:
2、第一方面,本申请实施例提供了一种移动端域内通信方法,所述方法应用于服务端,所述方法包括:
3、接收客户端发送的第一请求,所述第一请求为http请求或者https请求;其中,所述服务端为利用nio和sslsocket建立的socket服务端;
4、通过socket解析所述第一请求的请求头,获取所述请求头中携带的请求类型和请求内容;
5、根据所述请求类型,对所述请求内容进行对应的处理,形成处理结果;
6、根据所述处理结果,向所述客户端发送第一响应,其中,所述第一响应包括的响应头的格式符合http或者https响应头的格式。
7、第二方面,本申请实施例提供了一种移动端域内通信方法,所述方法包括:
8、客户端向服务端发送第一请求,所述第一请求的请求头中包括请求类型和请求内容;其中,所述第一请求为http请求或者https请求;
9、所述服务端接收所述客户端发送的第一请求,通过socket解析所述第一请求的请求头,获取所述请求头中携带的请求类型和请求内容;并根据所述请求类型,对所述请求内容进行对应的处理,形成处理结果;以及根据所述处理结果,向所述客户端发送第一响应,其中,所述第一响应包括的响应头的格式符合http或者https响应头的格式;
10、所述客户端接收所述服务端发送的第一响应。
11、第三方面,本申请实施例提供了一种移动端域内通信的服务器,包括:
12、接收模块,用于接收客户端发送的第一请求,所述第一请求为http请求或者https请求;其中,所述服务端为利用nio和sslsocket建立的socket服务端;
13、请求解析模块,用于通过socket解析所述第一请求的请求头,获取所述请求头中携带的请求类型和请求内容;
14、请求处理模块,用于根据所述请求类型,对所述请求内容进行对应的处理,形成处理结果;
15、响应模块,用于根据所述处理结果,向所述客户端发送第一响应,其中,所述第一响应包括的响应头的格式符合http或者https响应头的格式。
16、第四方面,本申请实施例提供了一种移动端域内通信的系统,包括服务端和客户端,其中:
17、所述客户端用于向服务端发送第一请求,所述第一请求的请求头中包括请求类型和请求内容;其中,所述第一请求为http请求或者https请求;
18、所述服务端用于接收所述客户端发送的第一请求,通过socket解析所述第一请求的请求头,获取所述请求头中携带的请求类型和请求内容;并根据所述请求类型,对所述请求内容进行对应的处理,形成处理结果;以及根据所述处理结果,向所述客户端发送第一响应,其中,所述第一响应包括的响应头的格式符合http或者https响应头的格式;
19、所述客户端用于接收所述服务端发送的第一响应。
20、第五方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现本申请第一方面或者第二方面实施例所述方法的步骤。
21、第六方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本申请第一方面或者第二方面实施例所述方法的步骤。
22、第七方面,本申请实施例提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现本申请第一方面或者第二方面实施例所述方法的步骤。
23、本申请实施例提供的技术方案至少带来以下有益效果:
24、通过以sslsocket为基础构建的服务端接收http请求或者https请求,并通过socket解析请求中的请求类型和请求内容,做出对应的处理;不需要开发客户端,节约成本,易于实现,适用于移动端的域内通信;同时实现请求响应式,非常适合rpc类的请求,容易扩展,rpc接口不受服务端的限制;且兼容http协议,方便实现远程方法调用。
25、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
1.一种移动端域内通信方法,其特征在于,所述方法应用于服务端,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述第一请求的请求头包括请求类型标识信息和请求内容标识信息;所述获取所述请求头中携带的请求类型和请求内容,包括:
3.如权利要求2所述的方法,其特征在于,所述第一请求的请求头包括请求类型标识标记和请求内容标识标记,在所述第一请求的请求头中,所述请求类型标识信息位于所述请求类型标识标记之后,所述请求内容标识信息位于所述请求内容标识标记之后;所述获取所述请求头中携带的请求类型和请求内容,包括:
4.如权利要求3所述的方法,其特征在于,所述请求类型包括传递数据、远程执行方法、发送文件以及接收文件,所述传递数据、远程执行方法、发送文件以及接收文件分别对应的请求内容标识信息为发送的数据、将方法序列化后形成的字符串、客户端将要发送的文件的路径以及客户端将要从服务端接收文件的路径。
5.如权利要求4所述的方法,其特征在于,所述根据所述请求类型,对所述请求内容进行对应的处理,包括:
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
7.一种移动端域内通信方法,其特征在于,包括:
8.一种移动端域内通信的服务器,其特征在于,包括:
9.一种移动端域内通信的系统,其特征在于,包括服务端和客户端,其中:
10.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1至6中任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。