CN103501331B - 数据传输方法、设备及系统 - Google Patents

数据传输方法、设备及系统 Download PDF

Info

Publication number
CN103501331B
CN103501331B CN201310456173.XA CN201310456173A CN103501331B CN 103501331 B CN103501331 B CN 103501331B CN 201310456173 A CN201310456173 A CN 201310456173A CN 103501331 B CN103501331 B CN 103501331B
Authority
CN
China
Prior art keywords
client
data
server
long connection
connection server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310456173.XA
Other languages
English (en)
Other versions
CN103501331A (zh
Inventor
严腾飞
江洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310456173.XA priority Critical patent/CN103501331B/zh
Publication of CN103501331A publication Critical patent/CN103501331A/zh
Priority to PCT/CN2014/087203 priority patent/WO2015043455A1/zh
Priority to US15/025,401 priority patent/US20160234307A1/en
Application granted granted Critical
Publication of CN103501331B publication Critical patent/CN103501331B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种数据传输方法、设备及系统。该方法包括:利用网络在第二客户端与长连接服务器间建立长连接;接收长连接服务器转发的、来自第一客户端的数据,其中,第一客户端将数据发送至第一服务器,由第一服务器转发至长连接服务器。通过本发明,解决了第一客户端与第二客户端之间的信息共享问题,使用户能够及时对两个客户端之间的信息进行同步,避免用户在不同客户端上进行重复复杂操作,节省用户时间,提高用户体验。

Description

数据传输方法、设备及系统
技术领域
本发明涉及互联网应用领域,特别是涉及一种数据传输方法、设备及系统。
背景技术
随着移动终端网民的爆炸式增长,移动互联网应用的日新月异,无论是企业,还是普通的网民都对于移动终端与其他终端上同一客户端之间信息的共享的要求都变得越来越高。就现有技术而言,移动终端的客户端和其他终端上的同一客户端之间无法做到信息同步。
具体来说,很多用户都有过这样的体验,在不同终端上使用同一浏览器时,针对浏览器中收藏夹内的信息或者是经常浏览的网页信息,需要重复执行在一个浏览器上以及执行过的操作才能将一些惯用的执行操作数据保存到另一终端的浏览器中。
这种不同终端的同一客户端之间无法做到信息同步共享的问题使得用户在移动终端和其他终端上使用同一客户端时不得不进行重复操作来保证信息的同步共享,不仅操作步骤非常繁琐,而且效率低下。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据传输的方法、设备和相应的数据传输系统。
依据本发明的一个方面,提供了一种数据传输方法,应用于第一客户端向第二客户端发送数据,包括:利用网络在所述第二客户端与长连接服务器间建立长连接;接收所述长连接服务器转发的、来自所述第一客户端的数据,其中,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器。
可选地,根据所述第一客户端的标识信息确定所述长连接服务器。
可选地,根据所述第一客户端的标识信息确定所述长连接服务器,包括:利用所述第二客户端向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;接受所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
可选地,所述响应消息中携带有至少两个地址信息时,根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
可选地,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:若所述第二客户端当前与所述长连接服务器断开长连接,则在所述长连接服务器中存储所述数据;检测到两者间再次建立长连接,接受所述长连接服务器转发的数据。
可选地,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中删除已断开的客户端所对应的标识信息。
可选地,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:利用所述第一服务器接收来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定长连接服务器;将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至所述第二客户端。
可选地,对来自所述第一客户端的数据进行合法性验证,包括下列至少之一:验证来自所述第一客户端的标识信息合法;验证所述网页数据中的网址为非恶意网址。
可选地,所述第一服务器与所述长连接服务器通过HTTP请求通信。
可选地,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
可选地,所述第一客户端和/或所述第二客户端为浏览器客户端。
可选地,所述第一客户端设置于终端,所述第二客户端设置于移动终端。
依据本发明的另一个方面,还提供了一种客户端,包括:连接建立器,配置为利用网络与长连接服务器间建立长连接;数据接收器,配置为接收所述长连接服务器转发的、来自第一客户端的数据,其中,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器。
可选地,所述连接建立器还配置为根据所述第一客户端的标识信息确定所述长连接服务器。
可选地,所述连接建立器还配置为:向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
可选地,所述响应消息中携带有至少两个地址信息时,所述连接建立器还配置为根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
可选地,所述数据接收器还配置为:当所述客户端与所述长连接服务器之间长连接的状态为断开时,停止接收所述数据;待所述长连接状态从断开恢复时,再次接收所述长连接服务器转发的数据;其中,在长连接未恢复的过程中,所述数据存储在所述长连接服务器中。
可选地,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中除已断开的客户端的标识信息。
可选地,所述数据接收器,还配置为:利用所述第一服务器接受来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定所述长连接服务器;将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至本客户端。
可选地,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
可选地,所述第一客户端和/或本客户端为浏览器客户端。
可选地,所述第一客户端设置于终端,本客户端设置于移动终端。
依据本发明的另一个方面,还提供了一种客户端,包括:数据获取器,配置为获取本客户端的数据;数据发送器,配置为将所述数据发送至第一服务器,由所述第一服务器将所述数据经长连接服务器转发至第二客户端。
可选地,本客户端和/或所述第二客户端为浏览器客户端。
依据本发明的另一个方面,还提供了一种数据传输系统,包括第一客户端,第二客户端,还包括第一服务器及长连接服务器;所述第一客户端,配置为发送所述第一客户端的数据值所述第一服务器;所述第一服务器,配置为将所述第一客户端数据转至所述长连接服务器;所述长连接服务器,配置为接收来自所述第一服务器的数据,并转发至第二客户端;所述第二客户端,配置为接收所述长连接服务器转发的数据。
依据本发明实施例,能够将第一客户端的数据发送至第二客户端,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,从而导致资源浪费以及效率低下的问题。
另外,依据本发明实施例,第二客户端能够与对应的长连接服务器建立长连接,以便从长连接服务器处接收数据,解决了第一客户端与第二客户端之间的信息共享问题,进一步解决了在新客户端执行用户需求的操作重复以及获取信息的重复,从而避免不同客户端操作的耗时以及数据的冗余,节省用户时间,提升用户体验。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的数据传输方法的处理流程图;
图2示出了根据本发明一个优选实施例的数据传输方法流程图;
图3示出了根据本发明一个实施例的一种客户端的结构示意图;
图4示出了根据本发明一个实施例的另一种客户端的结构示意图;以及
图5示出了根据本发明一个实施例的数据传输系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
相关技术中提及,用户启用一个新的客户端,需要重新将用户需求输入到新的客户端中,造成新客户端的动作以及数据冗余,浪费大量的资源,且使得实现用户需求的时延变长,效率较低。
为解决上述技术问题,本发明实施例提供了一种数据传输的方法。图1示出了根据本发明一个实施例的数据传输方法的处理流程图。如图1所示,该流程起始于步骤S102,利用网络在第二客户端与长连接服务器间建立长连接。第二客户端与长连接服务器间的长连接建立成功之后,执行步骤S104,接收长连接服务器转发的、来自第一客户端的数据。
依据本发明实施例,能够将第一客户端的数据发送至第二客户端,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,在新客户端执行用户需求的操作重复以及获取信息的重复,从而导致资源浪费以及效率低下的问题,避免不同客户端操作的耗时以及数据的冗余,节省用户时间,提升用户体验。
具体地,第一客户端向第二客户端发送数据,需要经过服务器等路由转发。参见图1中的步骤S104,第一客户端将数据发送至第一服务器,由第一服务器将第一客户端的数据转发至长连接服务器。第一服务器接收到第一客户端发送的数据之后,首先对第一客户端的数据进行合法性验证。优选的,本发明实施例中,第一服务器对上述数据中第一客户端的标识信息进行验证,确定第一客户端的标识信息是否为合法信息,例如验证该标识信息是否已在客户端中心注册,或者是该标识信息是否是服务器内部生成的标识符。若该标识信息经验证是合法信息,则第一服务器将该标识信息传输至长连接服务器,若该标识信息不是合法信息,则第一服务器拒绝将该标识信息发送至长连接服务器。
同样,第一服务器还可以对数据中除标识信息外的其他数据进行合法性验证,例如,验证第一客户端的网页数据等是否为非恶意数据。本发明实施例中,恶意数据指对用户终端内的数据进行窃取、毁坏等非法行为的病毒、木马等等。若第一服务器验证第一客户端的数据是上述恶意数据,则第一服务器可以拒绝将该恶意数据传输至长连接服务器,还可以在传输至长连接服务器时,提示长连接服务器上述数据可能包含恶意数据,进而在长连接服务器将数据传输至第二客户端时提示用户,第二客户端接收的数据可能包含恶意数据。第二客户端,根据用户指示选择是否接收可能包含恶意数据的数据。另外,若经第一服务器的验证,第一客户端的数据是非恶意数据,则第一服务器将该数据传输至长连接服务器。
优选的,本发明实施例中,第一客户端的数据经合法性验证之后,第一服务器还可以对第一客户端的数据进行加密处理,更加有效地提高数据传输的安全性。通过第一服务器对第一客户端的数据进行安全性验证及处理,能够更加有效地保证传输数据的安全性,防止在数据传输的过程中,一些恶意网址等附加到传输的数据中,对用户的终端或者客户端造成损害。
第一服务器对第一客户端的数据进行合法性验证之后,将经过合法性验证的数据发送至对应的长连接服务器。第一服务器与长连接服务器可以通过多种协议进行通信,例如,传输控制协议、用户数据报协议等。优选的,本发明实施例中,第一服务器与长连接服务器通过超文本传输协议(Hypertext transfer protocol,以下简称HTTP)请求通信。HTTP支持多种服务器模式、简单快速,因此通过HTTP请求通知能够提高数据传输效率。
长连接服务器接收到经第一服务器转发的第一客户端的数据之后,将数据转发至第二客户端。第二客户端从长连接服务器处接收第一客户端的数据之前,首先查找长连接服务器的地址信息,并根据地址信息与对应的长连接服务器建立长连接。
现介绍第二客户端查找长连接服务器的地址信息的具体方式。第二客户端向长连接分配服务器发送携带有第一客户端标识信息的地址请求消息,长连接分配服务器接收到该地址请求消息之后,根据其所携带的标识信息,确定对应的长连接服务器,并返回给第二客户端携带有对应的长连接服务器的地址信息的响应消息。
第二客户端根据查找到的长连接服务器的地址信息执行步骤S102,利用网络与长连接服务器建立长连接。值得说明地是,若长连接分配服务器返回的响应消息中携带至少两个地址信息,第二客户端可以根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息,并与对应的长连接服务器建立长连接。具体选择哪一个地址信息根据实际情况而定。此处的预设策略仅仅是一种地址信息的选择方法、步骤或策略,例如可以是随机选择策略,也可以是顺序选择策略。还可以根据与第二客户端相关的信息确定预定策略,对地址信息进行选择,例如,根据与第二客户端间的连接方式对地址信息进行选择,或者,根据与第二客户端间的数据传输带宽的大小对地址信息进行选择,等等。
本发明实施例中,上述网络包括有线网络和无线网络,优选的,本发明实施例中,无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。上述无线网络均为目前被广泛采用的无线网络,能够快速高效地进行数据(例如标识信息或者网页地址)的传输。
当第二客户端与对应的长连接服务器成功建立长连接之后,长连接服务器中存储有在线设备列表,该列表记录与该长连接服务器保持长连接的各个客户端的标识信息。若某一个客户端与该长连接服务器之间的长连接断开,则在长连接服务器的在线设备列表中删除已断开的客户端对应的标识信息。长连接服务器中的在线设备列表的实时更新保证长连接服务器能够及时更新与其建立长连接的客户端的信息,避免因在线设备列表数据更新不及时导致向已断开的客户端发送数据,导致数据包丢失等恶性后果,提高数据传输的安全性。
当长连接服务器接收到经第一服务器发送的第一客户端的数据时,长连接服务器根据第一客户端的数据中携带的标识信息查找到第二客户端,并根据在线设备列表中记录的信息确定与第二客户端之间的长连接状态。若此长连接的状态为连接,长连接服务器将第一客户端的数据发送至第二客户端。若此长连接的状态为断开,则在该长连接服务器中存储第一客户端的数据,然后,待该长连接服务器与第二客户端之间的长连接的状态由断开转为连接时,再将长连接服务器中存储的第一客户端的数据发送至第二客户端。长连接服务器对于不能及时传输至第二客户端的数据进行存储,同样能够避免数据包丢失的恶性后果,保证第一客户端的数据均被发送至第二客户端。
第二客户端接收到长连接服务器发送的数据之后,根据数据做相应处理。通过第二客户端对接收到的第一客户端的数据进行相应处理,保证第一客户端与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前在第一客户端未执行结束的操作,例如继续进行网页内容阅读。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端和/或第二客户端可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端和/或第二客户端为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
本发明实施例中,第一客户端的任意数据均可以被发送至第二客户端,保证了用户在第一客户端中所进行的各种操作均可以被同步更新到第二客户端中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。
本发明实施例中,若将第一客户端设置于第一终端,第二客户端设置于第二终端,可以实现不同终端间的客户端数据传输,还可以实现移动终端和终端间的客户端数据传输。因此,本发明实施例中,第一终端与第二终端可以是台式电脑、笔记本电脑等终端,还可以是手机、音乐播放器、平板电脑等移动终端。优选的,本发明实施例中,将第二客户端设置于移动终端,以便更加清楚简洁地阐述终端与移动终端间的客户端的数据传输。
实施例一
图2示出了根据本发明一个优选实施例的数据传输方法流程图,用于支持上述任意一个数据传输方法,将上述数据传输方法阐述得更清楚明白。如图2所示,本例中选择PC作为终端,手机为移动终端,客户端为浏览器客户端。为方便辨识第一客户端与第二客户端,在本例中,第一客户端被称为PC浏览器,第二客户端被称为手机浏览器,标识信息被称为唯一身份标识号码(Identity,以下简称ID)。
图2中,PC浏览器与手机浏览器间已建立能够进行数据传输的通路,并且分别保存有唯一ID。参见图2,手机浏览器第一次连接网络时,向长连接分配服务器请求长连接服务器的地址,手机浏览器在长连接分配服务器返回的地址信息中任选一个地址信息,并如图2中步骤2所示,利用网络自动与对应的长连接服务器建立长连接。手机浏览器在与长连接服务器建立长连接时,发送唯一ID至长连接服务器。长连接服务器中的在线设备列表将上述唯一ID对应的手机浏览器用户标识为在线。
参见图2中的步骤3,PC浏览器发送唯一ID以及自身数据(例如网页地址)至PC服务器。PC服务器接收到PC浏览器的数据之后,首先对PC浏览器的数据进行验证,包括验证唯一ID合法,即,验证上述唯一ID为已在系统中注册过的ID,以及,验证其他PC浏览器的数据为非恶意数据。例如,通过将网址发送到网盾服务器验证上述网址为非恶意网址。对PC浏览器的数据进行验证之后,PC服务器将经过合法性验证的数据通过HTTP通信方式转发至长连接服务器。长连接服务器接收到PC服务器的数据之后,执行图2中的步骤7,根据长连接服务器存储的在线设备列表,查找对应的手机浏览器是否在线,若在线,长连接服务器通过与手机浏览器之间的长连接发送PC浏览器的数据,若不在线,则长连接服务器存储PC服务器的数据,待与手机浏览器之间的长连接恢复之后,再发送数据至手机浏览器。
手机浏览器接收到长连接服务器发送的数据之后,根据数据做相应处理以保证第一客户端与第二客户端之间实现信息共享,并能够在第二客户端上继续执行之前在第一客户端未执行结束的操作,例如继续进行网页内容阅读。
基于上文各优选实施例提供的数据传输的方法,基于同一发明构思,本发明实施例提供了一种用于数据传输的客户端,用于实现上述数据传输的方法。
图3示出了根据本发明一个实施例的一种客户端的结构示意图。为将本发明实施例阐述得更加清楚简洁,以下将用于数据传输的客户端简称为第一客户端。参见图3,本发明实施例的第一客户端300至少包括:数据获取器310以及数据发送器320。
现介绍本发明实施例的数据传输设备中第一客户端300的各器件或组成的功能以及各部分间的连接关系。第一客户端300中,数据获取器310能够获取自身的标识信息,然后,与数据获取器310耦合的数据发送器320将标识信息传输至第二终端。
依据本发明实施例,能够将第一客户端300的数据发送至第二客户端,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,在新客户端执行用户需求的操作重复以及获取信息的重复,从而导致资源浪费以及效率低下的问题,避免不同客户端操作的耗时以及数据的冗余,节省用户时间,提升用户体验。
具体地,本发明实施例中,第一客户端300与第二客户端间能够传输标识信息,即,第一客户端300与第二客户端间已建立能够进行数据传输的通道,例如通过数据线连接。因此,在标识信息传输至第二客户端之后,数据获取器310还可以获取到第一客户端300中的数据,然后由数据发送器320将第一客户端300中的数据传输至第二客户端。与标识信息的直接传输不同,第一客户端300中的数据传输至第二客户端可以经过服务器等路由转发。
当数据获取器310获取到第一客户端300中的数据之后,数据发送器320将获取到的数据传输至第一服务器,此处的第一服务器为第一终端300所对应的服务器。例如,若第一终端为PC,则第一服务器为PC服务器。第一服务器接收到来自第一客户端300的数据之后,将其传输到与第二客户端间具有长连接的长连接服务器,再由长连接服务器将第一客户端300的数据传输至第二客户端。
由上述可知,将数据由第一客户端300传输至第二客户端,需要经过对应的长连接服务器。该长连接服务器的地址信息需要第一客户端300中的数据获取器310根据第一客户端300的标识信息进行获取。现介绍数据获取器310获取对应的长连接服务器的地址信息的方式。首先,数据获取器310将携带有第一客户端300的标识信息的地址请求消息发送至长连接分配服务器。长连接分配服务器收到地址请求消息之后,对其携带的标识信息进行验证,然后根据此标识信息向数据获取器310返回响应消息。其中,长连接分配服务器返回的响应消息中携带有与第一客户端300对应的长连接服务器的地址信息。
本发明实施例中,第一客户端300通过长连接分配服务器查找对应的长连接服务器的地址信息。长连接分配服务器根据不同终端上客户端的标识信息将不同的长连接服务器地址返回给各客户端,保证不同客户端的之间信息的同步更加快速及时。另外,第一客户端300与第二客户端通过同一标识信息查找对应的长连接服务器,保证指定用户客户端的数据被发送到同一用户的其他终端的客户端上,避免用户客户端的数据发送混淆。第一客户端300中的数据获取器310获取到对应长连接服务器的地址信息之后,连接建立模块330根据此地址信息与长连接服务器建立长连接并将用户在第一客户端300中的数据通过此长连接服务器发送至第二客户端。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端300的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。
另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端300和/或第二客户端可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端300和/或第二客户端为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第一客户端300的数据可以为用户在第一客户端300内执行任何操作的数据,也可以是第一客户300端更新的其他数据,存储在第一客户端300的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端300的收藏夹中收藏的各网址、第一客户端300当前打开的网址、第一客户端300的常用网址以及任意第一客户端300根据用户指令调用的用户数据等。第一客户端300的任意数据均可以被发送至第二客户端,保证了用户在第一客户端300中所进行的各种操作均可以被同步更新到第二客户端中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源浪费。
本发明实施例中,若将第一客户端设置于第一终端,第二客户端设置于第二终端,可以实现不同终端间的客户端数据传输,还可以实现移动终端和终端间的客户端数据传输。因此,本发明实施例中,第一终端与第二终端可以是台式电脑、笔记本电脑等终端,还可以是手机、音乐播放器、平板电脑等移动终端。优选的,本发明实施例中,将第二客户端设置于移动终端,以便更加清楚简洁地阐述终端与移动终端间的客户端的数据传输。
图4示出了根据本发明一个实施例的另一种客户端的结构示意图。为将本发明实施例阐述得更加清楚简洁,以下将另一种用于数据传输的客户端简称为第二客户端。参见图4,第二客户端400至少包括:连接建立器410以及数据接收器420。
现介绍第二客户端400中的各器件或组成的功能以及各部分间的连接关系。第二客户端400中的连接建立器410利用网络与长连接服务器建立长连接。当第二客户端400与长连接服务器之间的长连接建立成功,第二客户端400中的数据接收器420接收长连接服务器转发的第一客户端的数据。
依据本发明实施例,能够将第一客户端的数据发送至第二客户端400,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,在新客户端执行用户需求的操作重复以及获取信息的重复,从而导致资源浪费以及效率低下的问题,避免不同客户端操作的耗时以及数据的冗余,节省用户时间,提升用户体验。
具体地,连接建立器410向长连接分配服务器发送携带有第一客户端标识信息的地址请求消息,长连接分配服务器接收到该地址请求消息之后,根据其所携带的标识信息,确定对应的长连接服务器,并返回给连接建立器410携带有对应的长连接服务器的地址信息的响应消息。
连接建立器410接收长连接分配服务器返回的响应消息,并根据该响应消息中携带的长连接服务器的地址信息与对应的长连接服务器建立长连接。特别地,若长连接分配服务器返回的响应消息中携带至少两个地址信息,连接建立器410根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息,并与对应的长连接服务器建立长连接。
连接建立器410根据长连接服务器的地址信息,利用网络与长连接服务器成功建立长连接。本发明实施例中,上述网络包括有线网络和无线网络,优选的,本发明实施例中,无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。上述无线网络均为目前被广泛采用的无线网络,能够快速高效地进行数据(例如标识信息或者网页地址)的传输。
长连接服务器中存储有在线设备列表,该列表记录与该长连接服务器保持长连接的各个客户端的标识信息。若某一个客户端与该长连接服务器之间的长连接断开,则在长连接服务器的在线设备列表中删除已断开的客户端对应的标识信息。第二客户端400的连接建立器410与长连接服务器成功建立长连接之后,在线设备列表中将第二客户端400标识为在线。长连接服务器中的在线设备列表的实时更新保证长连接服务器能够及时更新与其建立长连接的客户端的信息,避免因在线设备列表数据更新不及时导致向已断开的客户端发送数据,导致数据包丢失等恶性后果,提高数据传输的安全性。
当长连接服务器接收到经第一服务器发送的第一客户端的数据时,长连接服务器根据第一客户端的数据中携带的标识信息查找到第二客户端400,并根据在线设备列表中记录的信息确定与第二客户端400之间的长连接状态。若此长连接的状态为连接,长连接服务器将第一客户端的数据发送至第二客户端400。若此长连接的状态为断开,则在该长连接服务器中存储第一客户端的数据,然后,待该长连接服务器与第二客户端400之间的长连接的状态由断开转为连接时,再将长连接服务器中存储的第一客户端的数据发送至第二客户端400。
第二客户端400中的数据接收器420根据第二客户端400与长连接服务器之间长连接的状态确定是否接收第一客户端的数据。具体方式为,若第二客户端400与长连接服务器之间长连接的状态为断开,则数据接收器420停止接收数据,待第二客户端400与长连接服务器之间长连接的状态恢复,数据接收器420继续从长连接服务器处接收第一客户端的数据,若第二客户端400与长连接服务器之间长连接的状态为连接,则数据接收器420从长连接服务器处接收第一客户端的数据。
在第一客户端的数据向第二客户端的传送过程中,首先利用第一服务器对第一客户端的数据进行合法性验证。优选的,本发明实施例中,第一服务器对上述数据中第一客户端的标识信息进行验证,确定第一客户端的标识信息是否为合法信息,例如验证该标识信息是否已在客户端中心注册,或者是该标识信息是否是服务器内部生成的标识符。若该标识信息经验证是合法信息,则第一服务器将该标识信息传输至长连接服务器,若该标识信息不是合法信息,则第一服务器拒绝将该标识信息发送至长连接服务器。
同样,第一服务器还可以对数据中除标识信息外的其他数据进行合法性验证,例如,验证第一客户端的网页数据等,是否为非恶意数据。本发明实施例中,恶意数据指对用户终端内的数据进行窃取、毁坏等非法行为的病毒、木马等等。若第一服务器验证第一客户端的数据是上述恶意数据,则第一服务器拒绝将该恶意数据传输至长连接服务器,若经第一服务器的验证,第一客户端的数据是非恶意数据,则第一服务器将该数据传输至长连接服务器。
长连接服务器接收到通过合法性验证的第一客户端的数据之后,由第二客户端400中的数据接收器420对第一客户端的数据进行接收。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。
另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端和/或第二客户端400可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端和/或第二客户端400为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第二客户端400接收的数据可以为用户在第一客户端内执行任何操作的数据,也可以是第一客户端更新的其他数据,存储在第一客户端的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端的收藏夹中收藏的各网址、第一客户端当前打开的网址、第一客户端的常用网址以及任意第一客户端根据用户指令调用的用户数据等。
另外,本发明实施例中,第二客户端400根据接收到的第一客户端的数据所进行的处理可以为根据第一客户端的数据对第二客户端400自身进行相应处理,也可以为对接收的第一客户端的数据进行处理。优选的,本发明实施例中,第二客户端400根据第一客户端的数据进行的处理包括,第二客户端400更新收藏夹,第二客户端400更新常用网址以及第二客户端400打开网址对应的网页等等。
本发明实施例中,第一客户端的任意数据均可以被发送至第二客户端400,保证了用户在第一客户端中所进行的各种操作均可以被同步更新到第二客户端400中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。
本发明实施例中,若将第一客户端设置于第一终端,第二客户端设置于第二终端,可以实现不同终端间的客户端数据传输,还可以实现移动终端和终端间的客户端数据传输。因此,本发明实施例中,第一终端与第二终端可以是台式电脑、笔记本电脑等终端,还可以是手机、音乐播放器、平板电脑等移动终端。优选的,本发明实施例中,将第二客户端设置于移动终端,以便更加清楚简洁地阐述终端与移动终端间的客户端的数据传输。
图5示出了根据本发明一个实施例的数据传输系统的结构示意图。如图5所示,本发明实施例中的数据传输系统500包括第一客户端510、第一服务器520、长连接服务器530、长连接分配服务器540以及第二客户端550。
现介绍本发明实施例的数据传输系统500中的各器件或组成的功能以及各部分间的连接关系。第一客户端510中的数据获取器511获取到自身的数据,并触发数据发送器512。
数据发送器512将第一客户端510中的数据发送至第一服务器520。第一服务器520接收到第一客户端510中的数据之后,首先对第一客户端510中的数据进行合法性验证。优选的,本发明实施例中,第一服务器520对上述数据中第一客户端510的标识信息进行验证,确定第一客户端510的标识信息是否为合法信息,例如验证该标识信息是否已在客户端中心注册,或者是该标识信息是否是服务器内部生成的标识符。若该标识信息经验证是合法信息,则第一服务器520将该标识信息传输至长连接服务器530,若该标识信息不是合法信息,则第一服务器520拒绝将该标识信息发送至长连接服务器530。
同样,第一服务器520还可以对数据中除标识信息外的其他数据进行合法性验证,例如,验证第一客户端510的网页数据等,是否为非恶意数据。本发明实施例中,恶意数据指对用户终端内的数据进行窃取、毁坏等非法行为的病毒、木马等等。若第一服务器520验证第一客户端510的数据是上述恶意数据,则第一服务器520拒绝将该恶意数据传输至长连接服务器530,若经第一服务器520的验证,第一客户端510的数据是非恶意数据,则第一服务器520将该数据传输至长连接服务器530。
当长连接服务器530接收到经第一服务器520发送的第一客户端510的数据时,长连接服务器530根据第一客户端510的数据中携带的标识信息查找到第二客户端550,并根据在线设备列表中记录的信息确定与第二客户端550之间的长连接状态。若此长连接的状态为连接,长连接服务器530将第一客户端510的数据发送至第二客户端550。若此长连接的状态为断开,则在该长连接服务器530中存储第一客户端510的数据,然后,待该长连接服务器530与第二客户端550之间的长连接的状态由断开转为连接时,再将长连接服务器530中存储的第一客户端510的数据发送至第二客户端550。
第二客户端550在通过长连接服务器530接收第一客户端510的数据之前,首先通过长连接分配服务器540查找对应长连接服务器530的地址信息。具体方式为,连接建立器551向长连接分配服务器540发送携带有第一客户端510标识信息的地址请求消息,长连接分配服务器接收到该地址请求消息之后,根据其所携带的标识信息,确定对应的长连接服务器530,并返回给连接建立器551携带有对应的长连接服务器530的地址信息的响应消息。
连接建立器551接收长连接分配服务器540返回的响应消息,并根据该响应消息中携带的长连接服务器530的地址信息与对应的长连接服务器530建立长连接。特别地,若长连接分配服务器540返回的响应消息中携带至少两个地址信息,连接建立器551根据预设策略选择其中一个地址信息作为即将连接的长连接服务器530的地址信息,并与对应的长连接服务器530建立长连接。
连接建立器551根据长连接服务器530的地址信息,利用网络与长连接服务器530成功建立长连接。本发明实施例中,上述网络包括有线网络和无线网络,优选的,本发明实施例中,无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。上述无线网络均为目前被广泛采用的无线网络,能够快速高效地进行数据(例如标识信息或者网页地址)的传输。
第二客户端550与长连接服务器530成功建立长连接之后,第二客户端550中的数据接收器552根据第二客户端550与长连接服务器530之间长连接的状态确定是否接收第一客户端510的数据。具体方式为,若第二客户端550与长连接服务器530之间长连接的状态为断开,则数据接收器552停止接收数据,待第二客户端550与长连接服务器之间长连接的状态恢复,数据接收器552继续从长连接服务器530处接收第一客户端510的数据,若第二客户端550与长连接服务器530之间长连接的状态为连接,则第二客户端550中的数据接收器552从长连接服务器530处接收数据。
本发明实施例中,标识信息是客户端的身份认证信息,可以是由用户设置的身份认证信息,还可以是服务器为客户端设置的身份认证信息,本发明实施例并不对此加以限定。优选的,本发明实施例中,标识信息可以是第一客户端的用户登录的账户信息,该账户信息是用户在客户端中心申请注册的账户,账户信息的申请简单易行,并且每个账户信息可以在多个客户端进行登录。
另外,本发明实施例中的标识信息也可以是服务器生成的一个能作为唯一标识的字符串,例如影子账户。影子账户可以是服务器根据时间、机器标识等信息生成的唯一标识,也可以是服务器随机生成的一个账户,服务器在生成这个账户之后,检查生成的这个影子账户是否已经存在,如果存在,则服务器重新生成一个影子账户,直到这个账户之前并不存在。影子账户具有不可重复性以及唯一性,每个影子账户仅能够标识一个客户端。
在本发明实施例中,第一客户端和/或第二客户端可以为浏览器客户端、安全卫士客户端、阅读器客户端、媒体播放器客户端等任意相同类型的客户端,还可以为不同类型但执行相同功能的客户端,本发明实施例并不对此加以限定。此处的第一、第二仅用于区分不同的客户端,对于客户端本身属性、顺序以及功能并不造成限定,将第一、第二换位指代不同的客户端也可。
优选的,本发明实施例中,第一客户端和/或第二客户端为浏览器客户端。用户通常在浏览器客户端执行收藏网址、设置常用网页等个性化操作,当用户从一个终端转向另一个终端时,需要在另一个终端新启用新的客户端,根据本发明实施例,用户在曾经的客户端上设置的个性化操作可以被自动同步到新启用的客户端内,无需用户重复操作。
同理,本发明实施例中,第一客户端的数据可以为用户在第一客户端内执行任何操作的数据,也可以是第一客户端更新的其他数据,存储在第一客户端的数据,等等,本发明实施例并不对此做任何限定。优选的,本发明实施例中,该数据可以包括第一客户端的收藏夹中收藏的各网址、第一客户端当前打开的网址、第一客户端的常用网址以及任意第一客户端根据用户指令调用的用户数据等。
另外,本发明实施例中,第二客户端根据接收到的第一客户端的数据所进行的处理可以为根据第一客户端的数据对第二客户端自身进行相应处理,也可以为对接收的第一客户端的数据进行处理。优选的,本发明实施例中,第二客户端根据第一客户端的数据进行的处理包括,第二客户端更新收藏夹,第二客户端更新常用网址以及第二客户端打开网址对应的网页等等。
本发明实施例中,第一客户端的任意数据均可以被发送至第二客户端,保证了用户在第一客户端中所进行的各种操作均可以被同步更新到第二客户端中,避免用户在新客户端执行重复操作,获取重复信息,进一步避免数据冗余以及资源的浪费。
本发明实施例中,若将第一客户端设置于第一终端,第二客户端设置于第二终端,可以实现不同终端间的客户端数据传输,还可以实现移动终端和终端间的客户端数据传输。因此,本发明实施例中,第一终端与第二终端可以是台式电脑、笔记本电脑等终端,还可以是手机、音乐播放器、平板电脑等移动终端。优选的,本发明实施例中,将第二客户端设置于移动终端,以便更加清楚简洁地阐述终端与移动终端间的客户端的数据传输。
根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
依据本发明实施例,能够将第一客户端的数据发送至第二客户端,解决了现有技术提到的客户端间无法进行数据传输的问题,进一步解决因不同客户端间无法进行数据传输,新客户端启用时必须重新引入用户需求,在新客户端执行用户需求的操作重复以及获取信息的重复,从而导致资源浪费以及效率低下的问题,避免不同客户端操作的耗时以及数据的冗余,节省用户时间,提升用户体验。
本发明实施例中,第二客户端通过长连接服务器接收第一客户端的数据,其中,第二客户端首先向长连接分配服务器请求对应的长连接服务器地址信息。长连接分配服务器根据不同客户端的标识信息将不同的长连接服务器地址返回给各客户端,保证不同终端的同一客户端之间信息的同步更加快速及时。另外,本发明实施例中,长连接服务器中存储的在线设备列表能够实时更新,保证长连接服务器能够及时更新与其建立长连接的客户端的信息,避免因在线设备列表数据更新不及时导致向已断开的客户端发送数据,导致数据包丢失等恶性后果,提高数据传输的安全性。
本发明一个实施例公开了A1、一种数据传输方法,应用于第一客户端向第二客户端发送数据,包括:
利用网络在所述第二客户端与长连接服务器间建立长连接;
接收所述长连接服务器转发的、来自所述第一客户端的数据,其中,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器。
A2、根据权利要求A1所述的方法,其中,根据所述第一客户端的标识信息确定所述长连接服务器。
A3、根据权利要求A2所述的方法,其中,根据所述第一客户端的标识信息确定所述长连接服务器,包括:
利用所述第二客户端向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;
接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
A4、根据权利要求A3所述的方法,其中,所述响应消息中携带至少两个地址信息时,根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
A5、根据权利要求A1至A4任一项所述的方法,其中,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:
若所述第二客户端当前与所述长连接服务器断开长连接,则在所述长连接服务器中存储所述数据;
检测到两者间再次建立长连接,接收所述长连接服务器转发的数据。
A6、根据权利要求A5所述的方法,其中,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;
若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中删除已断开的客户端所对应的标识信息。
A7、根据权利要求A1至A6任一项所述的方法,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:
利用所述第一服务器接收来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;
利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定长连接服务器;
将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至所述第二客户端。
A8、根据权利要求A7所述的方法,其中,对来自所述第一客户端的数据进行合法性验证,包括下列至少之一:
验证来自所述第一客户端的标识信息合法;
验证所述网页数据中的网址为非恶意网址。
A9、根据权利要求A7或A8所述的方法,其中,所述第一服务器与所述长连接服务器通过HTTP请求通信。
A10、根据权利要求A1至A9任一项所述的方法,其中,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
A11、根据权利要求A1至A10任一项所述的方法,其中,所述第一客户端和/或所述第二客户端为浏览器客户端。
A12、根据权利要求A1至A10任一项所述的方法,其中,所述第一客户端设置于终端,所述第二客户端设置于移动终端。
本发明另一个实施例公开了B13、一种客户端,包括:
连接建立器,配置为利用网络与长连接服务器间建立长连接;
数据接收器,配置为接收所述长连接服务器转发的、来自第一客户端的数据,其中,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器。
B14、根据权利要求B13所述的客户端,其中,所述连接建立器还配置为根据所述第一客户端的标识信息确定所述长连接服务器。
B15、根据权利要求B14所述的客户端,其中,所述连接建立器还配置为:
向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;
接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
B16、根据权利要求B15所述的客户端,其中,所述响应消息中携带至少两个地址信息时,所述连接建立器还配置为根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
B17、根据权利要求B13至B16任一项所述的客户端,其中,所述数据接收器还配置为:
当所述客户端与所述长连接服务器之间长连接的状态为断开时,停止接收所述数据;待所述长连接状态从断开恢复时,再次接收所述长连接服务器转发的数据;其中,在长连接未恢复的过程中,所述数据存储在所述长连接服务器中。
B18、根据权利要求B17所述的客户端,其中,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;
若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中删除已断开的客户端的标识信息。
B19、根据权利要求B13至B18任一项所述的客户端,所述数据接收器,还配置为:
利用所述第一服务器接收来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;
利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定所述长连接服务器;
将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至本客户端。
B20、根据权利要求B13至B19任一项所述的客户端,其中,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
B21、根据权利要求B13至B20任一项所述的客户端,其中,所述第一客户端和/或本客户端为浏览器客户端。
B22、根据权利要求B13至B21任一项所述的客户端,其中,所述第一客户端设置于终端,本客户端设置于移动终端。
本发明另一个实施例公开了C23、一种客户端,包括:
数据获取器,配置为获取本客户端的数据;
数据发送器,配置为将所述数据发送至第一服务器,由所述第一服务器将所述数据经长连接服务器转发至第二客户端。
C24、根据权利要求C23所述的客户端,其中,本客户端和/或所述第二客户端为浏览器客户端。
本发明另一个实施例公开了D25、一种数据传输系统,包括权利要求D23或D24所述的第一客户端,还权利要求D13至D22任一项所述的第二客户端,还包括第一服务器及长连接服务器:
所述第一客户端,配置为发送所述第一客户端的数据至所述第一服务器;
所述第一服务器,配置为将所述第一客户端数据转至所述长连接服务器;
所述长连接服务器,配置为接收来自所述第一服务器的数据,并转发至第二客户端;
所述第二客户端,配置为接收所述长连接服务器转发的数据。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据传输设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。

Claims (23)

1.一种数据传输方法,应用于第一客户端向第二客户端发送数据,包括:
利用网络在所述第二客户端与长连接服务器间建立长连接,其中,所述长连接服务器由所述第一客户端的标识信息确定;
接收所述长连接服务器转发的、来自所述第一客户端的数据,其中,所述数据中包括所述第一客户端的标识信息,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器;
其中,所述第一服务器接收到所述数据之后,首先对所述数据进行合法性验证,所述第一服务器将通过合法性验证的数据进行加密处理后,发送至所述长连接服务器;
当所述长连接服务器接收到经所述第一服务器发送的所述第一客户端的数据时,所述长连接服务器根据所述第一客户端的数据中携带的标识信息查找到所述第二客户端,并根据在线设备列表中记录的信息确定与所述第二客户端之间的长连接状态。
2.根据权利要求1所述的方法,其中,根据所述第一客户端的标识信息确定所述长连接服务器,包括:
利用所述第二客户端向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;
接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
3.根据权利要求2所述的方法,其中,所述响应消息中携带至少两个地址信息时,根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
4.根据权利要求1至3任一项所述的方法,其中,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:
若所述第二客户端当前与所述长连接服务器断开长连接,则在所述长连接服务器中存储所述数据;
检测到两者间再次建立长连接,接收所述长连接服务器转发的数据。
5.根据权利要求4所述的方法,其中,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;
若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中删除已断开的客户端所对应的标识信息。
6.根据权利要求1至3任一项所述的方法,接收所述长连接服务器转发的、来自所述第一客户端的数据,包括:
利用所述第一服务器接收来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;
利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定长连接服务器;
将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至所述第二客户端。
7.根据权利要求6所述的方法,其中,对来自所述第一客户端的数据进行合法性验证,包括下列至少之一:
验证来自所述第一客户端的标识信息合法;
验证所述网页数据中的网址为非恶意网址。
8.根据权利要求6所述的方法,其中,所述第一服务器与所述长连接服务器通过HTTP请求通信。
9.根据权利要求1至3任一项所述的方法,其中,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
10.根据权利要求1至3任一项所述的方法,其中,所述第一客户端和/或所述第二客户端为浏览器客户端。
11.根据权利要求1至3任一项所述的方法,其中,所述第一客户端设置于终端,所述第二客户端设置于移动终端。
12.一种客户端,包括:
连接建立器,配置为利用网络在本客户端与长连接服务器间建立长连接,其中,所述长连接服务器由第一客户端的标识信息确定;
数据接收器,配置为接收所述长连接服务器转发的、来自所述第一客户端的数据,其中,所述数据中包括所述第一客户端的标识信息,所述第一客户端将所述数据发送至第一服务器,由所述第一服务器转发至所述长连接服务器;
其中,所述第一服务器接收到所述数据之后,首先对所述数据进行合法性验证,所述第一服务器将通过合法性验证的数据进行加密处理后,发送至所述长连接服务器;
当所述长连接服务器接收到经所述第一服务器发送的所述第一客户端的数据时,所述长连接服务器根据所述第一客户端的数据中携带的标识信息查找到所述本客户端,并根据在线设备列表中记录的信息确定与所述本客户端之间的长连接状态。
13.根据权利要求12所述的客户端,其中,所述连接建立器还配置为:
向长连接分配服务器发送地址请求消息,请求获取所述长连接服务器的地址信息,其中,所述地址请求消息中携带有所述第一客户端的标识信息;
接收所述长连接分配服务器返回的响应消息,其中,所述响应消息中携带有所述长连接服务器的地址信息。
14.根据权利要求13所述的客户端,其中,所述响应消息中携带至少两个地址信息时,所述连接建立器还配置为根据预设策略选择其中一个地址信息作为即将连接的长连接服务器的地址信息。
15.根据权利要求12至14任一项所述的客户端,其中,所述数据接收器还配置为:
当所述本客户端与所述长连接服务器之间长连接的状态为断开时,停止接收所述数据;待所述长连接状态从断开恢复时,再次接收所述长连接服务器转发的数据;其中,在长连接未恢复的过程中,所述数据存储在所述长连接服务器中。
16.根据权利要求15所述的客户端,其中,在所述长连接服务器中存储有在线设备列表,其中记录有与所述长连接服务器保持长连接的各客户端的标识信息;
若某一客户端与所述长连接服务器断开长连接,在所述在线设备列表中删除已断开的客户端的标识信息。
17.根据权利要求12至14任一项所述的客户端,所述数据接收器,还配置为:
利用所述第一服务器接收来自所述第一客户端的数据,其中,所述数据包括网页数据以及所述第一客户端的标识信息;
利用所述第一服务器对来自所述第一客户端的数据进行合法性验证,并根据所述标识信息确定所述长连接服务器;
将通过验证的数据传输至确定的长连接服务器,由所述长连接服务器将数据转发至本客户端。
18.根据权利要求12至14任一项所述的客户端,其中,所述网络包括有线网络和无线网络,其中,所述无线网络包括Wifi、2G\3G\4G中的任意之一或多个的组合。
19.根据权利要求12至14任一项所述的客户端,其中,所述第一客户端和/或本客户端为浏览器客户端。
20.根据权利要求12至14任一项所述的客户端,其中,所述第一客户端设置于终端,本客户端设置于移动终端。
21.一种客户端,包括:
数据获取器,配置为获取本客户端的数据,其中,所述数据中包括所述本客户端的标识信息;
数据发送器,配置为将所述数据发送至第一服务器,由所述第一服务器将所述数据经长连接服务器转发至第二客户端,其中,所述长连接服务器由所述本客户端的标识信息确定;
其中,所述第一服务器接收到所述数据之后,首先对所述数据进行合法性验证,所述第一服务器将通过合法性验证的数据进行加密处理后,发送至所述长连接服务器;
当所述长连接服务器接收到经所述第一服务器发送的所述本客户端的数据时,所述长连接服务器根据所述本客户端的数据中携带的标识信息查找到所述第二客户端,并根据在线设备列表中记录的信息确定与所述第二客户端之间的长连接状态。
22.根据权利要求21所述的客户端,其中,本客户端和/或所述第二客户端为浏览器客户端。
23.一种数据传输系统,包括权利要求21或22所述的客户端,将其称为第一客户端;包括权利要求12至20任一项所述的客户端,将其称为第二客户端;还包括第一服务器及长连接服务器:
所述第一客户端,配置为发送所述第一客户端的数据至所述第一服务器,其中,所述数据中包括所述第一客户端的标识信息;
所述第一服务器,配置为将所述第一客户端数据转至所述长连接服务器,其中,所述长连接服务器由所述第一客户端的标识信息确定,所述第一服务器接收到所述数据之后,首先对所述数据进行合法性验证,所述第一服务器将通过合法性验证的数据进行加密处理后,发送至所述长连接服务器;
所述长连接服务器,配置为接收来自所述第一服务器的数据,并转发至所述第二客户端,当所述长连接服务器接收到经所述第一服务器发送的所述第一客户端的数据时,所述长连接服务器根据所述第一客户端的数据中携带的标识信息查找到所述第二客户端,并根据在线设备列表中记录的信息确定与所述第二客户端之间的长连接状态;
所述第二客户端,配置为接收所述长连接服务器转发的数据。
CN201310456173.XA 2013-09-29 2013-09-29 数据传输方法、设备及系统 Active CN103501331B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310456173.XA CN103501331B (zh) 2013-09-29 2013-09-29 数据传输方法、设备及系统
PCT/CN2014/087203 WO2015043455A1 (zh) 2013-09-29 2014-09-23 数据传输方法、设备及系统
US15/025,401 US20160234307A1 (en) 2013-09-29 2014-09-23 Data transmission method, device, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310456173.XA CN103501331B (zh) 2013-09-29 2013-09-29 数据传输方法、设备及系统

Publications (2)

Publication Number Publication Date
CN103501331A CN103501331A (zh) 2014-01-08
CN103501331B true CN103501331B (zh) 2017-05-10

Family

ID=49866501

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310456173.XA Active CN103501331B (zh) 2013-09-29 2013-09-29 数据传输方法、设备及系统

Country Status (1)

Country Link
CN (1) CN103501331B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015043455A1 (zh) * 2013-09-29 2015-04-02 北京奇虎科技有限公司 数据传输方法、设备及系统
CN103905536A (zh) * 2014-03-18 2014-07-02 汉柏科技有限公司 跨浏览器书签同步方法及系统
CN104021191B (zh) * 2014-06-13 2018-10-02 北京奇立软件技术有限公司 一种提供移动终端相关问题解决方案的方法、系统及服务器
CN105978784A (zh) * 2016-04-14 2016-09-28 北京乐租科技网络有限公司 一种签约提醒系统及方法
CN107395686B (zh) * 2017-06-28 2018-06-05 甘棠软件系统(上海)有限公司 切换长连接的方法、设备和系统
CN110086719B (zh) * 2019-04-30 2021-07-27 深圳市腾讯网域计算机网络有限公司 数据处理方法、装置及服务器
CN111586148B (zh) * 2020-04-30 2024-06-14 京东方科技集团股份有限公司 一种基于长连接的信息交互方法及系统
CN112235399B (zh) * 2020-10-14 2024-01-02 腾讯科技(深圳)有限公司 内容推送方法、装置、计算机设备及存储介质
CN113079220B (zh) * 2021-04-15 2022-07-15 深圳市万为物联科技有限公司 远程控制换电柜中控机的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413436A (zh) * 2011-09-14 2012-04-11 华为技术有限公司 信息传送方法和系统、以及移动终端上的浏览器
CN103024052A (zh) * 2012-12-17 2013-04-03 北京奇虎科技有限公司 实现浏览器数据同步的系统和方法
CN103023930A (zh) * 2011-09-20 2013-04-03 中兴通讯股份有限公司 网页共享方法及装置
CN103024062A (zh) * 2012-12-24 2013-04-03 腾讯科技(深圳)有限公司 一种数据共享方法、客户端及系统
CN103118077A (zh) * 2013-01-15 2013-05-22 百度在线网络技术(北京)有限公司 跨设备的内容传输方法、系统和客户端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413436A (zh) * 2011-09-14 2012-04-11 华为技术有限公司 信息传送方法和系统、以及移动终端上的浏览器
CN103023930A (zh) * 2011-09-20 2013-04-03 中兴通讯股份有限公司 网页共享方法及装置
CN103024052A (zh) * 2012-12-17 2013-04-03 北京奇虎科技有限公司 实现浏览器数据同步的系统和方法
CN103024062A (zh) * 2012-12-24 2013-04-03 腾讯科技(深圳)有限公司 一种数据共享方法、客户端及系统
CN103118077A (zh) * 2013-01-15 2013-05-22 百度在线网络技术(北京)有限公司 跨设备的内容传输方法、系统和客户端

Also Published As

Publication number Publication date
CN103501331A (zh) 2014-01-08

Similar Documents

Publication Publication Date Title
CN103501331B (zh) 数据传输方法、设备及系统
CN102811228B (zh) 网络业务登录方法、设备和系统
CN104333548B (zh) 在https网页中访问本地服务的方法及系统
WO2015043455A1 (zh) 数据传输方法、设备及系统
KR101253341B1 (ko) 모바일 단말용 애플리케이션 위변조 검증 시스템 및 방법
CN105162802B (zh) Portal认证方法及认证服务器
CN108200165A (zh) 请求传输系统、方法、装置及存储介质
KR20180008592A (ko) 신뢰받는 로그인 방법 및 장치
CN105847245A (zh) 一种电子邮箱登录认证方法和装置
WO2015007231A1 (zh) 一种恶意url的鉴定方法及装置
CN103491184A (zh) 数据传输方法、设备及系统
CN105873055B (zh) 一种无线网络接入认证方法及装置
CN107465666A (zh) 一种客户端ip获取方法与装置
CN106656911A (zh) 一种Portal认证方法、接入设备和管理服务器
CN105871853A (zh) 一种入口认证方法和系统
CN104618388B (zh) 快速注册登录方法及对应的重置服务器、信息服务器
CN108200158A (zh) 请求传输系统、方法、装置及存储介质
CN108259457A (zh) 一种web认证方法及装置
CN108881233A (zh) 防攻击处理方法、装置、设备及存储介质
CN106850502A (zh) 基于长连接的业务请求转发方法、存储方法、装置及系统
CN103023684B (zh) 网络信息管理的方法、装置和系统
CN103501334B (zh) 数据传输方法、设备及网络系统
CN104837134A (zh) 一种Web认证用户登录方法、设备和系统
CN106789858A (zh) 一种访问控制方法和装置以及服务器
CN108781367A (zh) 减少Cookie注入和Cookie重放攻击的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220715

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right