发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据传输的方法、设备及网络系统。
依据本发明的一个方面,提供了一种数据传输方法,包括:
在第一终端和移动终端之间建立连接,其中,第一客户端设置在所述第一终端中,第二客户端设置在所述移动终端中;获取所述第一客户端的第一数据,并将所述第一数据发送至所述第二客户端中;和/或获取所述第二客户端的第二数据,并将所述第二数据发送至所述第一客户端。
可选地,将所述第一数据发送至所述第二客户端,包括:将所述第一数据经所述第一终端的第一服务器传输至对应的长连接服务器,由所述长连接服务器将所述第一数据发送至所述第二客户端,其中,所述长连接服务器与所述第二客户端之间具有长连接。
可选地,所述第一数据利用第一消息作为载体进行传输,其中,所述第一消息中携带有所述第一数据、所述第一客户端的标识信息。
可选地,所述第一服务器对所述第一消息进行验证。
可选地,根据所述第一客户端的标识信息确定所述对应的长连接服务器。
可选地,根据所述第一客户端的标识信息确定所述对应的长连接服务器,包括:发送地址请求消息至长连接分配服务器,其中,所述地址请求消息中携带有所述第一客户端的标识信息;接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
可选地,所述第一数据包括下列至少之一:所述第一客户端的收藏夹中收藏的网址;所述第一客户端的常用网址;所述第一客户端当前打开的网址;所述第一客户端根据用户指令调用的用户数据。
可选地,将所述第一数据发送至所述第二客户端中之后,还包括:所述第二客户端接收所述第一数据;所述第二客户端根据所述第一数据进行处理。
可选地,所述第二客户端根据所述第一数据进行处理,包括以下至少一个:所述第二客户端更新收藏夹;所述第二客户端更新常用网址;所述第二客户端打开网址对应的网页。
可选地,在所述第一终端和所述移动终端之间建立连接之后,若查询所述移动终端中不存在所述第二客户端,获取所述第二客户端的安装包并在所述移动终端中进行安装。
可选地,将所述第二数据发送至所述第一客户端,包括:将所述第二数据经所述第一终端的第一服务器传输发至对应的长连接服务器,由所述长连接服务器将所述数据发送至所述第一客户端。
可选地,所述第二数据利用第二消息作为载体进行传输,其中,所述第二消息中携带有所述第二数据、所述第二客户端的标识信息。
可选地,所述第一服务器对所述第二消息进行验证。
可选地,所述第二数据包括下列至少之一:所述第二客户端的收藏夹中收藏的网址;所述第二客户端的常用网址;所述第二客户端当前打开的网址;所述第二客户端根据用户指令调用的用户数据。
可选地,将所述第二数据发送至运行在所述客户端的第一客户端中之后,还包括:所述第一客户端接收所述第二数据;所述第一客户端根据所述第二数据进行处理。
可选地,所述第一客户端根据所述第二数据进行处理,包括以下至少一个:所述第一客户端更新收藏夹;所述第一客户端更新常用网址;所述第一客户端打开网址对应的网页。
可选地,在所述第一终端和所述移动终端之间建立连接,包括:判断所述第一终端是否与其他移动终端建立了连接;若是,则根据用户的选择来确定与所述第一终端连接的移动终端。
可选地,在所述第一终端和所述移动终端之间建立连接,包括:在所述第一终端和所述移动终端之间建立有线连接;或者在所述第一终端和所述移动终端之间建立无线连接。
可选地,所述第一客户端的标识信息包括下列至少之一:所述第一客户端的使用者登录的账户信息;为所述第一客户端生成的唯一标识。
可选地,所述第一客户端和/或所述第二客户端为浏览器客户端。
依据本发明的另一个方面,还提供了一种客户端,设置于第一终端,所述第一终端与移动终端建立连接,包括:第一获取模块,配置为获取本地运行的第一客户端的第一数据;第一发送模块,配置为发送所述第一数据至运行在设置于所述移动终端的第二客户端中。
可选地,还包括:第一接收模块,配置为接收来自所述第二客户端的第二数据;第一处理模块,配置为根据所述第二数据进行处理。
可选地,本客户端和/或所述第二客户端为浏览器客户端。
依据本发明的另一个方面,还提供了一种客户端,设置于移动终端,所述移动终端与第一终端建立连接,包括:第二获取模块,配置为获取本客户端的第二数据;第二发送模块,配置为发送所述第二数据至运行在所述第一终端的第一客户端中。
可选地,还包括:第二接收模块,配置为接收来自所述第一客户端的第一数据;第二处理模块,配置为根据所述第一数据进行处理。
可选地,本客户端和/或所述第一客户端为浏览器客户端。
依据本发明的另一个方面,还提供了一种网络系统,包括设置于第一终端的第一客户端,设置于移动终端的第二客户端,所述第一终端与所述移动终端间建立连接:所述第一客户端,配置将第一数据发送至所述第二客户端中;所述第二客户端,配置为将第二数据发送至所述第一客户端中。
可选地,还包括所述第一终端的第一服务器,长连接分配服务器以及长连接服务器:所述长连接分配服务器,配置为根据所述第一客户端的标识信息确定对应的长连接服务器,并提供其地址;所述第一服务器,配置为接收所述第一客户端发送的第一数据和/或所述第二客户端发送的第二数据,并转发至所述长连接分配服务器分配的长连接服务器中;所述长连接服务器,配置为接收所述第一服务器转发的第一数据,将所述第一数据转发至所述第二客户端,以及,接收所述第一服务器转发的第二数据,将所述第二数据转发至所述第一客户端。
依据本发明实施例,第一终端和移动终端建立连接之后,分别设置在两个终端的第一客户端与第二客户端之间能够进行数据的双向传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
相关技术中提及,用户启用一个新的客户端,需要重新将用户需求输入到新的客户端中,造成新客户端的动作以及数据冗余,浪费大量的资源,且使得实现用户需求的时延变长,效率较低。
为解决上述技术问题,本发明实施例提供了一种数据传输的方法。图1示出了根据本发明一个实施例的数据传输方法的处理流程图。如图1所示,在本发明实施例中,第一客户端设置在第一终端中,第二客户端设置在移动终端中。参见图1中的步骤S102,首先在第一客户端和移动终端之间建立连接。当第一终端与移动终端之间连接建立完成,执行步骤S104,获取第一客户端的第一数据,并将第一数据发送至第二客户端中,和/或执行步骤S106,获取第二客户端的第二数据,并将第二数据发送至第一客户端。
依据本发明实施例,第一终端和移动终端建立连接之后,分别设置在两个终端的第一客户端与第二客户端之间能够进行数据的双向传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
由图1可知,本发明实施例提供的数据传输方法为双向数据传输方法,即,本发明实施例提供的数据传输方法可以是第一客户端将第一数据传输至第二客户端,也可以是第二客户端将第二数据传输至第一客户端,其中,两种方向的数据传输过程相似。为将本发明实施例阐述得更加清楚简洁,现以第一客户端发送数据至第二客户端为例进行介绍。
图2示出了根据本发明一个实施例的第一客户端一侧的数据传输方法的处理流程图。如图2所示,该流程起始于步骤S202,确定第一终端与移动终端间建立连接。第一终端可以通过多种方式与移动终端建立连接,例如有线方式、无线方式,其中,有线方式可以通过数据线进行连接,无线方式可以通过无线网络(例如蓝牙、wifi、局域网等)进行连接。
在步骤S202执行结束后,第一终端与移动终端间建立连接。进一步触发步骤S204,获取设置于第一终端的第一客户端的第一数据,并将第一数据发送至第二客户端中。
依据本发明实施例,第一终端和移动终端建立连接之后,分别设置在两个终端的第一客户端与第二客户端之间能够进行数据的双向传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
由图2所示流程可知,本发明实施例中,第一客户端与第二客户端间能够传输数据。具体地,第一客户端中的数据传输至第二客户端需要经过服务器等路由转发。现对其传输过程进行具体说明。
首先,获取第一客户端中的第一数据。其次,将获取的第一数据利用第一消息作为载体传输至第一服务器。此处的第一消息中携带有第一数据以及第一客户端的标识信息。另外,此处的第一服务器为第一终端所对应的服务器。例如,若第一终端为个人计算机(Personal Computer,以下简称PC),则第一服务器为PC服务器。第一服务器接收到第一客户端发送的第一消息之后,将其传输到与第二客户端间具有长连接的长连接服务器,再由长连接服务器将第一消息传输到第二客户端。
图3示出了根据本发明一个优选实施例的发送数据流程图。首先确定第一终端与移动终端之间建立连接。当移动终端连接到第一终端时,可以直接在移动终端与第一终端间建立连接,也可以根据第一终端是否已与其他移动终端建立连接以及用户的选择来确定是否与移动终端建立连接。
优选的,本发明实施例中,首先判断第一终端是否与其他移动终端建立了连接。若否,则确定第一终端与移动终端之间建立连接。若是,则根据用户的选择来确定与第一终端建立连接的移动终端。通过判断第一终端是否与其他移动终端建立连接以及用户的选择,确定是否与移动终端建立连接,能够保证用户根据自身的需要,将指定移动终端的客户端的数据发送至第一终端,避免用户客户端的数据发送混淆。
确定第一终端与移动终端之间建立连接之后,参见图3,首先执行步骤S301,第一客户端将携带有第一数据以及第一客户端自身标识信息的第一消息发送至第一服务器。
第一服务器接收到第一消息之后,参见图3中的步骤S302,首先对第一消息进行合法性验证,并将通过合法性验证的第一消息转发。优选的,本发明实施例中,第一服务器对第一消息中第一客户端的标识信息进行验证,确定第一客户端的标识信息是否为合法信息,例如验证该标识信息是否已在客户端中心注册,或者是该标识信息是否是服务器内部生成的标识符。若该标识信息经验证是合法信息,则第一服务器将该标识信息传输至长连接服务器,若该标识信息不是合法信息,则第一服务器拒绝将该标识信息发送至长连接服务器。
同样,第一服务器还可以对第一消息中除标识信息外的其他数据进行合法性验证,例如,验证第一客户端的网页数据等,是否为非恶意数据。本发明实施例中,恶意数据指对用户终端内的数据进行窃取、毁坏等非法行为的病毒、木马等等。若第一服务器验证第一客户端的数据是上述恶意数据,则第一服务器拒绝将该恶意数据传输至长连接服务器,若经第一服务器的验证,第一客户端的数据是非恶意数据,则第一服务器将该数据传输至长连接服务器。优选的,本发明实施例中,第一客户端传输的第一消息经合法性验证之后,第一服务器还可以对第一消息进行加密处理,更加有效地提高数据传输的安全性。通过第一服务器对第一消息进行安全性验证及处理,能够更加有效地保证传输数据的安全性,防止在数据传输的过程中,一些恶意网址等附加到传输的数据中,对用户的终端或者客户端造成损害。
第一服务器对第一消息进行合法性验证之后,将经过合法性验证的第一消息发送至对应的长连接服务器。第一服务器与长连接服务器可以通过多种协议进行通信,例如,传输控制协议、用户数据报协议等。优选的,本发明实施例中,第一服务器与长连接服务器通过超文本传输协议(Hypertext transferprotocol,以下简称HTTP)请求通信。HTTP支持多种服务器模式、简单快速,因此通过HTTP请求通知能够提高数据传输效率。
由图3可知,当执行完第一服务器将第一消息发送至对应的长连接服务器这一步骤(即图3中的步骤S302)之后,执行步骤S303。在步骤S303中,长连接服务器将第一消息发送至第二客户端。步骤S304,第二客户端根据接收的第一消息进行相应处理以保证第一客户端与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前的第一客户端为执行结束的操作,例如继续进行网页内容阅读。
由上述可知,将第一消息由第一客户端传输至第二客户端,需要经过对应的长连接服务器。该长连接服务器的地址信息需要第一客户端根据第一客户端的标识信息进行获取。现介绍第一客户端获取对应的长连接服务器的地址信息的方式。首先,第一客户端将携带有自身标识信息的地址请求消息发送至长连接分配服务器。长连接分配服务器收到地址请求消息之后,对其携带的标识信息进行验证,然后根据此标识信息向第一客户端返回响应消息。其中,长连接分配服务器返回的响应消息中携带有与第一客户端对应的长连接服务器的地址信息。
本发明实施例中,第二客户端通过长连接分配服务器查找对应的长连接服务器地址信息。长连接分配服务器根据不同终端上客户端的标识信息将不同的长连接服务器地址返回给各客户端,保证不同客户端之间信息的同步更加快速及时。
图4示出了根据本发明一个实施例的第二客户端一侧的数据传输方法处理流程图。参见图4,首先,执行步骤S402,即在第一终端与移动终端之间建立连接。确定第一终端与移动终端之间建立连接之后,第二客户端接收第一客户端的第一数据。
依据本发明实施例,第二客户端能够及时获取第一客户端中的第一数据,方便第二客户端进行信息更新。本发明实施例解决了第一客户端与第二客户端之间的信息共享问题,使用户能够及时对两个客户端之间的信息进行同步,从而避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。
具体地,在执行完第一终端与移动终端建立连接(即图4中的步骤S402)之后,移动终端查询是否存在第二客户端。若存在第二客户端,直接触发步骤S404,第二客户端接收第一客户端的第一数据。若不存在上述第二客户端,则需要首先获取第二客户端的安装包,并在第二终端中对第二客户端进行下载及安装。安装完成之后,执行步骤S404,第二客户端接收第一客户端的第一数据。
第二客户端接收第一客户端的第一数据的过程中,第一数据需要经过服务器等路由转发,另外,第一数据利用第一消息作为载体进行传输,其中,第一消息中携带有第一数据以及第一客户端的标识信息。现对其传输过程进行具体说明。
第二客户端首先查找与其对应的长连接服务器的地址信息。现介绍第二客户端进行长连接服务器地址的查找的具体方式。第二客户端向长连接分配服务器发送携带有标识信息的地址请求消息,长连接分配服务器接收到该地址请求消息之后,根据其所携带的标识信息,确定对应的长连接服务器,并返回给第二客户端携带有对应的长连接服务器的地址信息的响应消息。
第二客户端接收到长连接分配服务器发送的对应长连接服务器的地址信息之后,与上述地址信息对应的长连接服务器建立长连接,以便从长连接服务器处接收第一数据。
当第二客户端与对应的长连接服务器成功建立长连接之后,长连接服务器中存储有在线设备列表,该列表记录与该长连接服务器保持长连接的各个客户端的标识信息。若某一个客户端与该长连接服务器之间的长连接断开,则在长连接服务器的在线设备列表中删除已断开的客户端对应的标识信息。长连接服务器中的在线设备列表的实时更新保证长连接服务器能够及时更新与其建立长连接的客户端的信息,避免因在线设备列表数据更新不及时导致向已断开的客户端发送数据,导致数据包丢失等恶性后果,提高数据传输的安全性。
当长连接服务器接收到经第一服务器发送的第一数据时,长连接服务器根据第一数据中携带的标识信息查找到第二客户端,并根据在线设备列表中记录的信息确定与第二客户端之间的长连接状态。若此长连接的状态为连接,长连接服务器将第一数据发送至第二客户端。若此长连接的状态为断开,则在该长连接服务器中存储第一数据,然后,待该长连接服务器与第二客户端之间的长连接的状态由断开转为连接时,再将长连接服务器中存储的第一数据发送至第二客户端。
第二客户端接收到长连接服务器发送的第一数据之后,根据第一数据做相应处理以保证第一客户端与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前在第一客户端未执行结束的操作,例如继续进行网页内容阅读。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,影子账户也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端和/或第二客户端可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端和/或第二客户端为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第一数据可以为用户在第一客户端内执行任何操作的数据,也可以是第一客户端更新的其他数据,存储在第一客户端的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端的收藏夹中收藏的各网址、第一客户端当前打开的网址、第一客户端的常用网址以及任意第一客户端根据用户指令调用的用户数据等。另外,本发明实施例中,第二客户端根据接收到的第一数据所进行的处理可以为根据第一数据对第二客户端自身进行相应处理,也可以为对接收的第一数据进行处理。优选的,本发明实施例中,第二客户端根据第一数据进行的处理包括,第二客户端更新收藏夹,第二客户端更新常用网址以及第二客户端打开网址对应的网页等等。
本发明实施例中,第一客户端的任意数据均可以被发送至第二客户端,保证了用户在第一客户端中所进行的各种操作均可以被同步更新到第二客户端中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。
实施例一
图5示出了根据本发明一个优选实施例的数据传输方法流程图,用于支持上述任意一个数据传输方法,将上述数据传输方法阐述得更清楚明白。如图5所示,本例中选择PC作为终端,手机为移动终端,客户端为浏览器客户端。为方便辨识第一客户端与第二客户端,在本例中,第一客户端被称为PC浏览器,第二客户端被称为手机浏览器。
参见图5,首先执行步骤S501,在PC和手机之间使用USB数据线建立连接。PC浏览器接收到手机连接到PC的通知后,执行步骤S502,将自身的标识信息发送至手机。PC浏览器收到上述通知之后,执行步骤S503,查询是否已有账户信息在该客户端登录,并根据查询结果将PC浏览器的数据发送至PC服务器。具体地,若已有账户信息在该客户端登录,则PC浏览器将该账户信息中的有效数据发送至PC服务器。若无账户信息在该客户端登录,则PC浏览器生成一个唯一标识,为PC浏览器的标识信息,并将此标识信息以及PC浏览器自身的数据发送至PC服务器。
在本优选实施例中,步骤S503中提及的PC浏览器发送自身数据至PC服务器这一步骤能够在数据传输的整个过程中执行,以保证PC浏览器能够及时将自身数据以及实时更新的数据发送至PC服务器。即,PC浏览器可以在PC与手机建立连接之后将自身的数据发送至PC服务器,也可以在PC未与手机建立连接时,发送数据。同理,PC浏览器可以在将自身的标识信息发送至手机之前,将数据发送至PC服务器,也可以在PC浏览器将自身的标识信息发送至手机之后,再将数据发送至PC服务器。
PC服务器接收到PC浏览器的数据之后,执行步骤S504,对PC浏览器发送的数据进行合法性验证,并将通过合法性验证的数据发送经加密处理后,发送至长连接服务器。其中,合法性验证可以是验证PC浏览器发送的标识信息是否合法,也可以是验证PC浏览器发送的数据是否为非恶意数据。若PC浏览器的数据无法通过PC服务器的合法性验证,则PC服务器并不对该数据进行发送处理。
另外,手机通过步骤S502接收到PC浏览器发送的标识信息之后,执行步骤S505,查询自身是否安装有手机浏览器。若手机中没有安装手机浏览器,则首先在手机中对手机浏览器进行下载及安装,安装完成后,手机将PC浏览器的标识信息发送至手机浏览器。若手机中已存在手机浏览器,则直接将PC浏览器的标识信息发送至手机浏览器。
手机浏览器收到PC浏览器的标识信息之后,执行步骤S506,将携带有上述标识信息的长连接服务器的地址请求信息发送至长连接分配服务器。长连接分配服务器接收到手机浏览器的地址请求消息之后,执行步骤S507,发送携带有长连接服务器的地址信息的响应消息至手机浏览器。手机浏览器接收到携带有长连接服务器的地址信息的响应消息,执行步骤S508,根据长连接服务器的地址信息,与对应的长连接服务器建立长连接。
长连接服务器接收到PC浏览器的数据之后,执行步骤S509,根据手机浏览器与长连接服务器之间长连接的状态判断是否发送PC浏览器的数据至手机浏览器。具体地,长连接服务器中存储有在线设备列表,该列表的实时更新保证长连接服务器能够及时更新与其建立长连接的浏览器的信息,避免因在线设备列表数据更新不及时导致向已断开的浏览器发送数据,导致数据包丢失等恶性后果,提高数据传输的安全性。
当长连接服务器收到经PC服务器发送的PC浏览器的数据之后,根据上述在线设备列表查询与对应的手机浏览器之间长连接的状态,若该长连接的状态为连接,则发送PC浏览器的数据至手机浏览器。若该长连接的状态为断开,则存储PC浏览器的数据,待长连接服务器与对应的手机浏览器之间的长连接状态恢复时,再将PC浏览器的数据发送至手机浏览器。
手机浏览器接收到长连接服务器发送的数据之后,执行步骤S510,根据接收到的数据做相应处理以保证第一客户端与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前在第一客户端未执行结束的操作,例如继续进行网页内容阅读。
基于上文各优选实施例提供的数据传输的方法,基于同一发明构思,本发明实施例提供了一种用于数据传输的客户端,用于实现上述数据传输的方法。
图6示出了根据本发明一个实施例的一种客户端的结构示意图。为将本发明实施例阐述得更加清楚简洁,以下将用于数据传输的一种客户端简称为第一客户端。参见图6,本发明实施例的第一客户端600至少包括:第一获取模块610、第一发送模块620、第一接收模块630以及第一处理模块640。
现介绍本发明实施例的数据传输设备中第一客户端600的各器件或组成的功能以及各部分间的连接关系。第一客户端600中,第一获取模块610获取本地运行的第一客户端600的第一数据。第一获取模块610获取到第一数据之后,由第一发送模块620发送第一数据至设置于移动终端的第二客户端。
依据本发明实施例,第一终端和移动终端建立连接之后,分别设置在两个终端的第一客户端600与第二客户端之间能够进行数据的双向传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
第一客户端600中的第一获取模块610以及第一发送模块620能够完成第一客户端600的数据发送功能,而第一接收模块630接收第二客户端的第二数据,并触发第一处理模块640,由第一处理模块640根据第二客户端的第二数据进行相应处理,以保证第一客户端600与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前在第一客户端600未执行结束的操作,例如继续进行网页内容阅读。
本发明实施例中,第一客户端600根据接收到的第二客户端的第二数据所进行的处理可以为根据第二数据对第一客户端600自身进行相应处理,也可以为对接收的第二数据进行处理。优选的,本发明实施例中,第一客户端600根据第二数据进行的处理包括,第一客户端600更新收藏夹,第一客户端600更新常用网址以及第第一客户端600打开网址对应的网页等等。
在本发明实施例中,第一客户端600和/或第二客户端可以为任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端600和/或第二客户端为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
图7示出了根据本发明一个实施例的另一种客户端的结构示意图。为将本发明实施例阐述得更加清楚简洁,以下将另一种用于数据传输的客户端简称为第二客户端。参见图7,本发明实施例的第二客户端700至少包括:第二获取模块710、第二发送模块720、第二接收模块730以及第二处理模块740。
现介绍本发明实施例的数据传输设备中第二客户端700的各器件或组成的功能以及各部分间的连接关系。第二客户端700中,第二获取模块710获取本地运行的第二客户端700的第二数据。第二获取模块710获取到第二数据之后,由第二发送模块720发送第二数据至第一客户端。
依据本发明实施例,能够将第二客户端700的第二数据发送至第一客户端,实现了第一客户端与第二客户端700之间进行数据传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
第二客户端700中的第二获取模块710以及第二发送模块720能够完成第二客户端700的数据发送功能,而第二接收模块730接收第一客户端的第一数据,并触发第二处理模块740,由第二处理模块740根据第一客户端的第一数据进行相应处理,以保证第一客户端与第二客户端700之间实现信息共享,并能够在第二客户端700上继续执行之前在第一客户端未执行结束的操作,例如继续进行网页内容阅读。
在本发明实施例中,第一客户端和/或第二客户端700可以为任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端和/或第二客户端700为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第二客户端700接收的第一数据可以为用户在第一客户端内执行任何操作的数据,也可以是第一客户端更新的其他数据,存储在第一客户端的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端的收藏夹中收藏的各网址、第一客户端当前打开的网址、第一客户端的常用网址以及任意第一客户端根据用户指令调用的用户数据等。
另外,本发明实施例中,第二客户端700根据接收到的第一数据所进行的处理可以为根据第一数据对第二客户端700自身进行相应处理,也可以为对接收的第一数据进行处理。优选的,本发明实施例中,第二客户端700根据第一数据进行的处理包括,第二客户端700更新收藏夹,第二客户端700更新常用网址以及第二客户端700打开网址对应的网页等等。
图8示出了根据本发明一个实施例的数据传输系统的结构示意图。如图8所示,本发明实施例中的数据传输系统800包括设置于第一终端的第一客户端810、设置于移动终端的第二客户端820、长连接分配服务器830、长连接服务器840以及与第一客户端对应的第一服务器850。
现介绍本发明实施例的数据传输系统800中的各器件或组成的功能以及各部分间的连接关系。第一客户端810作为数据发送端时,获取自身的第一数据,并将第一数据以及自身的标识信息利用第一消息作为载体发送至第一服务器850。第一服务器850接收到第一消息之后,对第一消息进行合法性验证。优选的,本发明实施例中,第一服务器850对第一消息中第一客户端810的标识信息进行验证,确定第一客户端810的标识信息是否为合法信息,例如验证该标识信息是否已在客户端中心注册,或者是该标识信息是否是服务器内部生成的标识符。若该标识信息经验证是合法信息,则第一服务器850将该标识信息传输至长连接服务器840,若该标识信息不是合法信息,则第一服务器850拒绝将该标识信息发送至长连接服务器840。
同样,第一服务器850还可以对第一消息中除标识信息外的其他数据进行合法性验证,例如,验证第一客户端810的网页数据等,是否为非恶意数据。本发明实施例中,恶意数据指对用户终端内的数据进行窃取、毁坏等非法行为的病毒、木马等等。若第一服务器850验证第一客户端810的数据是上述恶意数据,则第一服务器850拒绝将该恶意数据传输至长连接服务器840,若经第一服务器850的验证,第一客户端810的数据是非恶意数据,则第一服务器850将该数据传输至长连接服务器840。优选的,本发明实施例中,第一客户端810传输的第一消息经合法性验证之后,第一服务器850还可以对第一消息进行加密处理,更加有效地提高数据传输的安全性。通过第一服务器850对第一消息进行安全性验证及处理,能够更加有效地保证传输数据的安全性,防止在数据传输的过程中,一些恶意网址等附加到传输的数据中,对用户的终端或者客户端造成损害。
第一服务器850对第一消息进行合法性验证之后,将通过合法性验证的第一消息经过加密处理发送至长连接服务器840。长连接服务器840接收到第一消息,根据其中携带的标识信息在本地在线设备列表中查询与对应的第二客户端820之间长连接的状态。若上述长连接的状态为连接,则长连接服务器840发送第一数据至第二客户端820。若上述长连接状态为断开,则在长连接服务器840中存储第一数据,待与第二客户端820之间长连接的状态恢复,再行发送。
第二客户端820作为数据接收端,首先向长连接分配服务器830请求对应长连接服务器840的地址信息。第二客户端820请求长连接服务器840的地址信息的具体方式为,第二客户端820发送携带有第一客户端810标识信息的地址请求消息至长连接分配服务器830。长连接分配服务器830根据收到的地址请求消息中第一客户端810的标识信息确定对应的长连接服务器840,并返回给第二客户端820响应消息。该响应消息中携带有长连接服务器840的地址信息。第二客户端820接收到上述响应消息之后,根据响应消息中携带的长连接服务器840的地址信息,与对应的长连接服务器840建立长连接,以便从长连接服务器840处接收第一客户端810的第一数据。
第二客户端820接收到第一数据之后,根据第一数据做相应处理以保证第一客户端810与第二客户端820之间实现信息共享,并能够在第二客户端820上继续执行之前在第一客户端810未执行结束的操作,例如继续进行网页内容阅读。
依据本发明实施例,第一终端和移动终端建立连接之后,分别设置在两个终端的第一客户端810与第二客户端820之间能够进行数据的双向传输,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端810的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,影子账户也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端810和/或第二客户端820可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端810和/或第二客户端820为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第一数据可以为用户在第一客户端810内执行任何操作的数据,也可以是第一客户端810更新的其他数据,存储在第一客户端810的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端810的收藏夹中收藏的各网址、第一客户端810当前打开的网址、第一客户端810的常用网址以及任意第一客户端810根据用户指令调用的用户数据等。另外,本发明实施例中,第二客户端820根据接收到的第一数据所进行的处理可以为根据第一数据对第二客户端820自身进行相应处理,也可以为对接收的第一数据进行处理。优选的,本发明实施例中,第二客户端820根据第一数据进行的处理包括,第二客户端820更新收藏夹,第二客户端820更新常用网址以及第二客户端820打开网址对应的网页等等。
本发明实施例中,第一客户端810的任意数据均可以被发送至第二客户端820,保证了用户在第一客户端810中所进行的各种操作均可以被同步更新到第二客户端820中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。值得注意的是,与第一客户端对应的长连接服务器和与第二客户端对应的长连接服务器可以是相同的也可以是不同的服务器。
本发明实施例中,第一客户端810与第二客户端820之间可以进行双向数据传输,即,可以是第一客户端810发送第一客户端810的第一数据至第二客户端,也可以是第二客户端820发送第二客户端820的第二数据至第一客户端。上文介绍了数据传输系统800中,第一客户端810向第二客户端820传输第一数据的具体过程,第二客户端820向第一客户端810传输第二数据的过程与其相似,再次不作赘述。
本发明一个实施例公开了A1、一种数据传输方法,包括:
在第一终端和移动终端之间建立连接,其中,第一客户端设置在所述第一终端中,第二客户端设置在所述移动终端中;
获取所述第一客户端的第一数据,并将所述第一数据发送至所述第二客户端中;和/或
获取所述第二客户端的第二数据,并将所述第二数据发送至所述第一客户端。
A2、根据权利要求A1所述的方法,其中,将所述第一数据发送至所述第二客户端,包括:
将所述第一数据经所述第一终端的第一服务器传输至对应的长连接服务器,由所述长连接服务器将所述第一数据发送至所述第二客户端,其中,所述长连接服务器与所述第二客户端之间具有长连接。
A3、根据权利要求A2所述的方法,其中,所述第一数据利用第一消息作为载体进行传输,其中,所述第一消息中携带有所述第一数据、所述第一客户端的标识信息。
A4、根据权利要求A3所述的方法,其中,所述第一服务器对所述第一消息进行验证。
A5、根据权利要求A2至A4任一项所述的方法,其中,根据所述第一客户端的标识信息确定所述对应的长连接服务器。
A6、根据权利要求A5所述的方法,其中,根据所述第一客户端的标识信息确定所述对应的长连接服务器,包括:
发送地址请求消息至长连接分配服务器,其中,所述地址请求消息中携带有所述第一客户端的标识信息;
接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
A7、根据权利要求A1至A6任一项所述的方法,其中,所述第一数据包括下列至少之一:
所述第一客户端的收藏夹中收藏的网址;
所述第一客户端的常用网址;
所述第一客户端当前打开的网址;
所述第一客户端根据用户指令调用的用户数据。
A8、根据权利要求A1至A7任一项所述的方法,其中,将所述第一数据发送至所述第二客户端中之后,还包括:
所述第二客户端接收所述第一数据;
所述第二客户端根据所述第一数据进行处理。
A9、根据权利要求A8所述的方法,其中,所述第二客户端根据所述第一数据进行处理,包括以下至少一个:
所述第二客户端更新收藏夹;
所述第二客户端更新常用网址;
所述第二客户端打开网址对应的网页。
A10、根据权利要求A1至A9任一项所述的方法,其中,在所述第一终端和所述移动终端之间建立连接之后,若查询所述移动终端中不存在所述第二客户端,获取所述第二客户端的安装包并在所述移动终端中进行安装。
A11、根据权利要求A1至A10任一项所述的方法,其中,将所述第二数据发送至所述第一客户端,包括:
将所述第二数据经所述第一终端的第一服务器传输发至对应的长连接服务器,由所述长连接服务器将所述数据发送至所述第一客户端。
A12、根据权利要求A11所述的方法,其中,所述第二数据利用第二消息作为载体进行传输,其中,所述第二消息中携带有所述第二数据、所述第二客户端的标识信息。
A13、根据权利要求A12所述的方法,其中,所述第一服务器对所述第二消息进行验证。
A14、根据权利要求A11至A13任一项所述的方法,其中,所述第二数据包括下列至少之一:
所述第二客户端的收藏夹中收藏的网址;
所述第二客户端的常用网址;
所述第二客户端当前打开的网址;
所述第二客户端根据用户指令调用的用户数据。
A15、根据权利要求A11至A14任一项所述的方法,其中,将所述第二数据发送至运行在所述客户端的第一客户端中之后,还包括:
所述第一客户端接收所述第二数据;
所述第一客户端根据所述第二数据进行处理。
A16、根据权利要求A15所述的方法,其中,所述第一客户端根据所述第二数据进行处理,包括以下至少一个:
所述第一客户端更新收藏夹;
所述第一客户端更新常用网址;
所述第一客户端打开网址对应的网页。
A17、根据权利要求A11至A16任一项所述的方法,其中,将所述第二数据发送至运行在所述客户端的第一客户端中之后,还包括:
所述第一客户端接收所述第二数据;
所述第一客户端根据所述第二数据进行处理。
A18、根据权利要求A17所述的方法,其中,所述第一客户端根据所述第二数据进行处理,包括以下至少一个:
所述第一客户端更新收藏夹;
所述第一客户端更新常用网址;
所述第一客户端打开网址对应的网页。
A19、根据权利要求A11至A18任一项所述的方法,其中,在所述第一终端和所述移动终端之间建立连接,包括:
判断所述第一终端是否与其他移动终端建立了连接;
若是,则根据用户的选择来确定与所述第一终端连接的移动终端。
A20、根据权利要求A1至A19任一项所述的方法,其中,在所述第一终端和所述移动终端之间建立连接,包括:
在所述第一终端和所述移动终端之间建立有线连接;或者
在所述第一终端和所述移动终端之间建立无线连接。
A21、根据权利要求A2至A20任一项所述的方法,其中,所述第一客户端的标识信息包括下列至少之一:
所述第一客户端的使用者登录的账户信息;
为所述第一客户端生成的唯一标识。
A22、根据权利要求A1至A21任一项所述的方法,其中,所述第一客户端和/或所述第二客户端为浏览器客户端。
本发明另一个实施例公开了B23、一种客户端,设置于第一终端,所述第一终端与移动终端建立连接,包括:
第一获取模块,配置为获取本地运行的第一客户端的第一数据;
第一发送模块,配置为发送所述第一数据至运行在设置于所述移动终端的第二客户端中。
B24、根据权利要求B23所述的客户端,还包括:
第一接收模块,配置为接收来自所述第二客户端的第二数据;
第一处理模块,配置为根据所述第二数据进行处理。
B25、根据权利要求B23或B24所述的客户端,其中,本客户端和/或所述第二客户端为浏览器客户端。
本发明另一个实施例公开了C26、一种客户端,设置于移动终端,所述移动终端与第一终端建立连接,包括:
第二获取模块,配置为获取本客户端的第二数据;
第二发送模块,配置为发送所述第二数据至运行在所述第一终端的第一客户端中。
C27、根据权利要求C26所述的客户端,其中,还包括:
第二接收模块,配置为接收来自所述第一客户端的第一数据;
第二处理模块,配置为根据所述第一数据进行处理。
C28、根据权利要求C26或C27所述的客户端,其中,本客户端和/或所述第一客户端为浏览器客户端。
本发明另一个实施例公开了D29、一种网络系统,包括设置于第一终端的第一客户端,设置于移动终端的第二客户端,所述第一终端与所述移动终端间建立连接:
所述第一客户端,配置将第一数据发送至所述第二客户端中;
所述第二客户端,配置为将第二数据发送至所述第一客户端中。
D30、根据权利要求D29所述的系统,其中,还包括所述第一终端的第一服务器,长连接分配服务器以及长连接服务器:
所述长连接分配服务器,配置为根据所述第一客户端的标识信息确定对应的长连接服务器,并提供其地址;
所述第一服务器,配置为接收所述第一客户端发送的第一数据和/或所述第二客户端发送的第二数据,并转发至所述长连接分配服务器分配的长连接服务器中;
所述长连接服务器,配置为接收所述第一服务器转发的第一数据,将所述第一数据转发至所述第二客户端,以及,接收所述第一服务器转发的第二数据,将所述第二数据转发至所述第一客户端。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据传输设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。