一种文件传输方法、装置及电子设备与流程

文档序号:28804844发布日期:2022-02-09 01:40阅读:78来源:国知局
一种文件传输方法、装置及电子设备与流程

1.本技术实施例涉及数据传输技术领域,尤其涉及一种文件传输方法及装置、电子设备、计算机可读存储介质及计算机程序产品。


背景技术:

2.随着科技的不断进步,在不同使用场景下,用户会使用不同的终端设备以提升使用体验,例如,在户外用户倾向于使用手机、平板电脑等终端设备,在室内用户倾向于使用笔记本、台式电脑等终端设备。用户在使用不同终端设备时,经常需要对相同的文件进行操作。
3.相关技术中,用户从一个终端设备下载或接收文件后,若切换到其他终端设备,其他终端设备中并不会存在该文件,通常需要用户在其它终端设备重新下载或接收该文件,才能在其它设备继续对该文件进行操作。
4.但是,目前方案中,为了在不同设备对同一文件进行操作,用户切换使用的终端设备后,需要在切换后的设备再次下载或接收相同的文件,操作复杂,极大影响了用户的使用体验,尤其是在文件数据量较大的情况下,会造成用户大量时间的浪费。


技术实现要素:

5.本技术实施例提供一种文件传输方法及装置、电子设备、计算机可读存储介质及计算机程序产品,以解决相关技术中,在一台客户端下载文件后,再切换到其他登录的客户端,其他登录的客户端没有该文件导致用户使用体验不佳的问题。
6.第一方面,本技术实施例提供了一种文件传输方法,应用于服务端,该方法包括:
7.接收第一终端发送的下载请求,所述下载请求包括登录所述第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;
8.响应于所述下载请求,确定所述目标用户标识对应的所述目标用户登录的第二终端;
9.向所述第二终端发送所述文件标识对应的下载指令,以使所述第二终端根据所述下载指令获取所述待下载文件。
10.在一种可选实施方式中,所述待下载文件是由其他用户登录的终端,发送至所述第一终端的即时通讯消息中包括的文件,所述向所述第二终端发送所述文件标识对应的下载指令,包括:
11.解析所述下载请求,确定对话用户标识、消息标识和所述待下载文件对应的资源定位符;其中,所述对话用户标识用于表征向所述第一终端发送所述待下载文件的用户对应的标识,所述消息标识用于表征包含所述待下载文件的即时通讯消息的标识;
12.根据所述目标用户标识、所述对话用户标识、所述消息标识和所述待下载文件对应的资源定位符,生成下载指令;
13.向所述第二终端发送所述文件标识对应的下载指令,以使得所述第二终端在通过
所述目标用户标识、所述对话用户标识和所述消息标识对所述下载指令进行验证后,根据所述资源定位符从所述服务端对应的内容分发网络获取所述待下载文件。
14.在一种可选实施方式中,所述向所述第二终端发送所述文件标识对应的下载指令,包括:
15.确定所述第二终端的状态,所述状态包括在线状态和离线状态;
16.向状态为在线状态的第二终端,发送所述文件标识对应的下载指令。
17.在一种可选实施方式中,所述向所述第二终端发送所述文件标识对应的下载指令,还包括:
18.在确认存在处于离线状态的第二终端的情况下,将所述下载指令存储在所述服务端本地;
19.持续检测所述第二终端的状态,在检测到由离线状态转变为在线状态的第二终端的情况下,向所述由离线状态转变为在线状态的第二终端发送所述下载指令;
20.在向所有第二终端发送所述下载指令后,删除所述下载指令。
21.在一种可选实施方式中,所述方法还包括:
22.在确定所述第一终端删除所述待下载文件后,向所述第二终端发送删除指令,以供所述第二终端根据所述删除指令删除所述待下载文件。
23.在一种可选实施方式中,所述方法还包括:
24.在确定所述第一终端和所述第二终端处于同一局域网络的情况下,向所述第一终端发送传输指令,以使得所述第一终端通过所述局域网络将所述待下载文件通过所述局域网络发送至所述第二终端。
25.在一种可选实施方式中,所述接收第一终端发送的下载请求,包括:
26.接收由所述第一终端,在响应于对选项菜单中同步下载选项的点按操作后,发送的下载请求,其中,所述选项菜单通过对所述待下载文件的文件标识的长按操作所触发。
27.第二方面,本技术实施例提供了一种文件传输装置,该述装置包括:
28.接收模块,被配置为接收第一终端发送的下载请求,所述下载请求包括登录所述第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;
29.确定模块,被配置为响应于所述下载请求,确定所述目标用户标识对应的所述目标用户登录的第二终端;
30.发送模块,被配置为向所述第二终端发送所述文件标识对应的下载指令,以使所述第二终端根据所述下载指令获取所述待下载文件。
31.在一种可选实施方式中,所述发送模块还包括:
32.解析子模块,被配置为解析所述下载请求,确定对话用户标识、消息标识和所述待下载文件对应的资源定位符;其中,所述对话用户标识用于表征向所述第一终端发送所述待下载文件的用户对应的标识,所述消息标识用于表征包含所述待下载文件的即时通讯消息的标识;
33.生成子模块,被配置为根据所述目标用户标识、所述对话用户标识、所述消息标识和所述待下载文件对应的资源定位符,生成下载指令;
34.第一发送子模块,被配置为向所述第二终端发送所述文件标识对应的下载指令,以使得所述第二终端在通过所述目标用户标识、所述对话用户标识和所述消息标识对所述
下载指令进行验证后,根据所述资源定位符从服务端对应的内容分发网络获取所述待下载文件。
35.在一种可选实施方式中,所述发送模块还包括:
36.确定子模块,被配置为确定所述第二终端的状态,所述状态包括在线状态和离线状态;
37.第二发送子模块,被配置为向状态为在线状态的第二终端,发送所述文件标识对应的下载指令。
38.在一种可选实施方式中,所述发送模块还包括:
39.存储子模块,被配置为在确认存在处于离线状态的第二终端的情况下,将所述下载指令存储在服务端本地;
40.第三发送子模块,被配置为持续检测所述第二终端的状态,在检测到由离线状态转变为在线状态的第二终端的情况下,向所述由离线状态转变为在线状态的第二终端发送所述下载指令;
41.删除子模块,被配置为在向所有第二终端发送所述下载指令后,删除所述下载指令。
42.在一种可选实施方式中,所述装置还包括:
43.删除模块,被配置为在确定所述第一终端删除所述待下载文件后,向所述第二终端发送删除指令,以供所述第二终端根据所述删除指令删除所述待下载文件。
44.在一种可选实施方式中,所述装置还包括:
45.直传模块,被配置为在确定所述第一终端和所述第二终端处于同一局域网络的情况下,向所述第一终端发送传输指令,以使得所述第一终端通过所述局域网络将所述待下载文件通过所述局域网络发送至所述第二终端。
46.在一种可选实施方式中,所述接收模块还包括:
47.接收子模块,被配置为接收由所述第一终端,在响应于对选项菜单中同步下载选项的点按操作后,发送的下载请求,其中,所述选项菜单通过对所述待下载文件的文件标识的长按操作所触发。
48.第三方面,本技术实施例还提供了一种电子设备,包括用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现所述的文件传输方法。
49.第四方面,本技术实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行所述的文件传输方法。
50.第五方面,本技术实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现所述的文件传输方法。
51.在本技术实施例中,可以接收第一终端发送的下载请求,下载请求包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端;向第二终端发送文件标识对应的下载指令,以使第二终端根据下载指令获取待下载文件,因此用户可以仅通过对第一终端进行操作,即可将待下载文件下载到用户登录过的第二终端,使得用户在切换到使用第二终端时,可以立刻对待下载文件进行操作,从而节省了用户时间,提升了用户体验。
52.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
53.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
54.图1是本技术实施例提供的一种文件传输方法的步骤流程图;
55.图2是本技术实施例提供的另一种文件传输方法的步骤流程图;
56.图3是本技术实施例提供的一种即时通讯窗口示意图;
57.图4是本技术实施例提供的一种文件传输系统架构图;
58.图5是本技术实施例提供的一种文件传输装置的框图;
59.图6是本技术一个实施例的电子设备的逻辑框图;
60.图7是本技术另一个实施例的电子设备的逻辑框图。
具体实施方式
61.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
62.图1是本技术实施例提供的一种文件传输方法的步骤流程图,如图1所示,该方法包括:
63.步骤101,接收第一终端发送的下载请求,所述下载请求包括登录所述第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识。
64.第一终端可以是任意终端设备,例如笔记本电脑、台式电脑、手机、平板电脑等。第一终端也可以是运行在任意终端设备上的程序客户端,例如微信客户端、钉钉客户端等。
65.下载请求是由操作第一终端向服务端发起的请求,下载请求具体可以包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识。
66.具体的,目标用户登录第一终端后,可以在第一终端上选择待下载文件对应的文件标识,第一终端根据用户选择的待下载文件对应的文件标识和登录第一终端的用户标识生成下载请求,并将该下载求情发送至服务端,服务端接收该下载请求。其中,用户标识可以是用户的身份证明(user identification,uid),用户识别码(user id),用户名称等可以指示用户身份的信息;文件标识可以是文件名称、文件链接、文件统一资源定位符(uniform resource locator,url)等可以指示待下载文件的信息。需要说明的是,用户可以一次性选择多个待下载文件,则生成的下载请求中可以包含多个待下载文件对应的文件标识。
67.举例来说,目标用户user登陆了一台笔记本电脑a,并且目标用户在该笔记本电脑a选择了文件document.doc作为待下载文件,则笔记本电脑a根据用户user的身份识别码
uid和文件document.doc的文件标识生成一个下载请求,并将该下载请求发送至服务端,服务端接收该下载请求后,从该下载请求中解析出身份识别码uid和document.doc的文件标识。
68.步骤102、响应于所述下载请求,确定所述目标用户标识对应的所述目标用户登录的第二终端。
69.第二终端可以表示除第一终端之外,通过目标用户标识登录过的其他客户端,和/或通过目标用户标识的关联用户标识登录过的客户端,其中,第二终端与第一终端可以为同一软件的运行在不同设备上的客户端。以微信为例,第一终端可以是一台手机上运行的安卓版本的微信客户端,则对应的第二终端可以是另一台手机运行的安卓版本的微信客户端、另一台手机上运行的ios版本的微信客户端、一台笔记本电脑上运行的网页版微信客户端等等。
70.举例来说,用户user登陆了一台笔记本电脑a,一台手机b和一台手机c,如果笔记本电脑a为第一终端,即笔记本电脑a发起了下载请求,则可以将手机b和手机c确定为第二终端。若用户user同时关联了用户ad,且用户ad登陆了一台平板电脑d,则可以将手机b、手机c和平板电脑d确定为第二终端。
71.具体的,服务端接收到第一终端发送的下载请求后,对该下载请求进行解析,并从该下载请求中确定出目标用户标识和待下载文件对应的文件标识。服务端通过解析出的目标用户标识查询用户登录信息和/或用户关联信息,确定目标用户标识登录过的客户端,和/或通过目标用户标识的关联用户标识登录过的客户端,并将通过目标用户标识登录过的客户端,和/或通过目标用户标识的关联用户标识登录过的客户端中,除第一终端之外的客户端作为第二终端。
72.步骤103、向所述第二终端发送所述文件标识对应的下载指令,以使所述第二终端根据所述下载指令获取所述待下载文件。
73.服务端在确定出第二终端后,可以将待下载文件对应的文件标识对应的下载指令发送至第二终端,第二终端中的每个客户端接收服务端发送的下载指令,并对下载指令进行解析,获取下载指令中的资源定位符,并从该资源定位符将待下载文件下载保存到本地,以使用户在切换到第二终端时,可以直接对待下载文件进行操作和使用,避免了用户切换到第二终端时,需要再次手动下载待下载文件才能操作和使用待下载文件导致的麻烦。
74.用户通过第一终端发送下载请求时,可以选择仅将待下载文件下载到第一终端,也可以选择将下载文件同时下载到第一终端和第二终端,并且,用户在第一终端发起下载请求时,可能并未登录第二终端。
75.由于上述原因,在用户发起下载请求时,待下载文件可能在之前已经被下载到了第一终端,即第一终端已存在待下载文件,因此,若服务端确定第一终端已存在待下载文件的情况下,可以仅向第二终端发送待下载指令,避免第一终端重复下载待下载文件造成的资源浪费。
76.具体的,在一种实施方式中,第一终端在生成下载请求前,检测本地是否存储有待下载文件,如果确定本地存储有待下载文件,则在生成的下载请求中加入下载标识信息,通过该下载标识信息指示第一终端是否已经存储有待下载文件。服务端接收到下载请求后,通过解析下载请求得到下载标识信息,并根据下载标识信息确定第一终端是否存储有待下
载文件。
77.若服务端确定第一终端不存在待下载文件的情况下,可以同时向第一终端和第二终端发送待下载指令,以使得第一终端和第二终端可以同步下载并保存待下载文件,使用户在切换设备后可以直接使用待下载文件,无需手动下载,节省了用户的时间,提升了用户的使用体验。
78.可选的、步骤103还可以包括:
79.子步骤1031、确定所述第二终端的状态,所述状态包括在线状态和离线状态。
80.由于第二终端包括的是用户登录过的客户端,而用户在登录之后有可能退出登录,或者第二终端中可能存在未连接网络的客户端,这些退出登录的客户端和未连接网络的客户端对于服务端来说,均可以视为处于离线状态的客户端,对于第二终端中的这些处于离线状态的客户端来说,无法在第一时间接收服务端发送的待下载文件。因此,在向第二终端发送待下载指令时需要确定第二终端是否处于离线状态。
81.具体的,对于第二终端登录失效的情况,服务端可以向第二终端发送验证请求,第二终端在接收到该验证请求后向服务端发送登录凭证信息,服务端根据接收到的登录凭证信息验证第二终端的登录凭证信息是否有效或是否过期,并将登录凭证信息无效和过期的第二终端确定为离线状态。对于第二终端主动退出登录的情况,第二终端在退出登录时可以向服务端发送登出请求,服务端在接收到登出请求后,将发出登出请求的客户端确定为离线状态。对于断开网络连接的情况,服务端可以在发送下载指令前,将未响应验证请求的第二终端确定为离线状态。
82.子步骤1032、向状态为在线状态的第二终端,发送所述文件标识对应的待下载文件。
83.服务端在向第二终端发送待下载指令之前,可以向第二终端发送验证请求,第二终端在接收到该验证请求后向服务端发送登录凭证信息,服务端根据接收到的登录凭证信息验证第二终端的登录凭证信息是否有效或是否过期,并将登录凭证信息有效的第二终端确定为在线状态。
84.需要说明的是,上述确定第二终端状态的方式仅为示例性描述,确定第二终端状态的方式并不限于上述方式,本技术实施例在此并不进行具体限定。
85.综上,本技术实施例提供的一种文件传输方法,本技术可以接收第一终端发送的下载请求,下载请求包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端;向第二终端发送文件标识对应的下载指令,以使第二终端根据下载指令获取待下载文件,因此用户可以仅通过对第一终端进行操作,即可将待下载文件下载到用户登录过的第二终端,使得用户在切换到使用第二终端时,可以立刻对待下载文件进行操作,从而节省了用户时间,提升了用户体验。
86.图2是本技术实施例提供的另一种文件传输方法的步骤流程图,如图2所示,该方法可以包括:
87.步骤201,接收第一终端发送的下载请求。
88.此步骤参见上述子步骤101,本技术实施例不再赘述。
89.可选的,步骤201还可以包括:
90.子步骤2011,接收由所述第一终端,在响应于对选项菜单中同步下载选项的点按操作后,发送的下载请求,其中,所述选项菜单通过对所述待下载文件的文件标识的长按操作所触发。
91.由于用户并不一定需要在第二终端使用或操作相同的待下载文件,也就是说,用户可能不需要将待下载文件下载到第二终端,因此用户可以对待下载文件选择不同的下载方式,第一终端还可以向服务端发送本机下载请求,对于第一终端发送的本机下载请求,服务端接收到该本机下载请求后,仅会将待下载文件发送给第一终端。因此,下载请求可以包括本地下载请求和同步下载请求。
92.具体的,用户可以通过对第一终端上的待下载文件对应的文件标识进行点按操作,以使第一终端向服务端发送包含待下载文件的文件标识的本地下载请求。用户可以通过对第一终端上的待下载文件对应的文件标识进行长按操作,呼出选项菜单,并通过点按选项菜单上的同步下载选项向服务端发送同步下载请求,以使服务端根据该同步下载请求使第二终端存储对应的待下载文件,当然,用户也可以通过对第一终端上的待下载文件对应的文件标识进行长按操作,直接向服务端发送包含待下载文件的文件标识的同步下载请求。其中,点按操作可以是触控操作、鼠标操作等。本发明实施例对发送下载请求的方式仅进行示例性描述,并不进行具体限定,可以根据实际情况灵活设置第一终端发送下载请求的方式。
93.进一步的,用户在上述选项菜单上还可以进一步手动选择所要同步下载的第二终端,例如,用户登录了4台客户端,其中1台为第一终端,用户可以在选项菜单上选择其他3台客户端中的任意客户端为第二终端,并生成同步下载指令。
94.在本技术实施例中,用户可以通过不同的操作向服务端发送不同的下载请求,使用户可以灵活选择所要下载的客户端类型和数量,可以满足不同用户的需求,提升了用户体验。
95.步骤202,解析所述下载请求,确定对话用户标识、消息标识和所述待下载文件对应的资源定位符;其中,所述对话用户标识用于表征向所述第一终端发送所述待下载文件的用户对应的标识,所述消息标识用于表征包含所述待下载文件的即时通讯消息的标识。
96.由于其他用户和目标用户之间经常会通过即时通讯消息发送视频、图片、音乐、文本文档等富媒体文件,因此,待下载文件可以包含客户端的即时通讯记录中通过即时通讯消息的形式传输的待下载文件。其中其他用户为可以向目标用户发送文件的用户,其他用户通过登录第二客户端向目标用户发送文件。
97.第一终端生成下载请求时,还可以在下载请求中包含目标用户标识、对话用户标识、设备标识、消息标识和待下载文件对应的文件标识等信息,以便于服务端对该下载请求进行验证,使目标用户接收到的文件不会被其他伪造的下载请求获取到;还能使第二终端对由该下载请求生成的下载指令进行验证,使第二终端不会根据伪造的下载指令下载到恶意文件。
98.参照图3,示出了本技术实施例提供的一种即时通讯窗口示意图。如图3所示,用户user为第一终端登录的目标用户,用户ad为与用户us即时通讯的一个用户,文件d1为用户ad通过即时通讯消息c1向用户us发送的文件,文件d2为目标用户us向用户ad通过即时通讯消息c2发送的文件。如果目标用户us将文件d1作为待下载文件生成下载请求,则该生成的
下载请求中,用户ad的用户标识作为对话用户标识、目标用户us的标识作为目标用户标识、即时通讯消息c1对应的标识作为消息标识,以及文件d1对应的文件标识;如果目标用户us将文件d2作为待下载文件生成下载请求,则该生成的下载请求中,用户ad的用户标识作为对话用户标识、目标用户us的标识作为目标用户标识、即时通讯消息c2对应的标识作为消息标识,以及文件d2对应的文件标识。同时,将设备dvs的设备id作为设备标识。
99.服务端接收到第一终端发送的下载请求后,从下载请求中解析出目标用户标识、对话用户标识、消息标识、设备标识和待下载文件对应的文件标识等信息,其中,设备标识可以用来确定发送该下载请求的设备,从而从用户登录的客户端中确定出第一终端。
100.步骤203,根据所述目标用户标识、所述对话用户标识、所述消息标识和所述待下载文件对应的资源定位符,生成下载指令。
101.由于目标用户和其他用户之间的即时通讯均由服务端转发,因此服务端可以验证下载请求中包括的目标用户标识、对话用户标识、消息标识和待下载文件标识之间是否相互匹配,可以在目标用户标识、对话用户标识、消息标识和待下载文件标识之间相互匹配的情况下,才进行后续操作,以提升用户接收或发送文件的安全性。当然,服务端也可以不对下载请求进行验证,可以按照实际需要灵活设置。
102.由于待下载文件是用户发送的文件,该文件已经被存储在服务端对应的存储单元中,等待接收到该文件的用户下载,因此,服务端可以通过待下载文件对应的文件标识,从存储单元中获取待下载文件的资源定位符。
103.在获得待下载文件对应的资源定位符后,服务端根据目标用户标识、对话用户标识、消息标识、文件标识和资源定位符生成下载指令,该下载指令也可以仅根据资源定位符和文件标识生成,以指示所要下载的文件和文件在网络上的位置。
104.步骤204,向所述第二终端发送所述下载指令,以使得所述第二终端在通过所述目标用户标识、所述对话用户标识和所述消息标识验证所述下载指令合法的情况下,根据所述资源定位符从所述服务端对应的内容分发网络获取所述待下载文件。
105.服务端生成下载指令后,将下载指令发送给所有第二终端,由于每个第二终端均为通过目标用户登录的客户端,因此,当第一终端接收到其他用户发送的消息时,与第一终端对应的第二终端也同样会收到相同的消息,也就是说,第二终端的即时通讯内容与第一终端的即时通讯内容相同,第二终端也可以通过即时通讯信息确定待下载文件对应的对话用户标识、文件标识以及目标用户标识等信息,进而,第二终端可以将自身确定的信息与从接收到的下载指令中解析出的对话用户标识、文件标识以及目标用户标识等信息进行比对,在比对结果一致的情况下,确认下载指令合法,进而执行下载指令;若比对结果不一致则确定下载指令不合法,则不执行下载指令。当然,也可以设置第二终端不对下载指令进行合法性判断,可以根据实际需要灵活设置。
106.第二终端接收到下载指令或确定下载指令合法后,根据从下载指令中解析出的资源定位符从服务端对应的内容分发网络获取对应的待下载文件,并将待下载文件存储在本地,以供用户在第二终端对待下载文件进行使用和操作。
107.在本技术实施例中,第二终端可以对接收到的下载指令进行验证,由于伪造的下载指令中信息与第二终端从即时通讯信息中确定出的信息难以匹配,因此第二终端不会响应伪造的下载指令,提高了文件下载的安全性。并且,服务端可以仅向第二终端发送待下载
指令对应的资源定位符,而不必直接发送待下载文件,降低了服务端的带宽负载,因此较难在服务端形成网络拥堵,提升了服务端的运行效率。
108.可选的,步骤204具体可以包括:
109.子步骤2041,确定所述第二终端的状态,所述状态包括在线状态和离线状态。
110.此步骤参见上述子步骤1031,本技术实施例不再赘述。
111.子步骤2042,向状态为在线状态的第二终端,发送所述下载指令。
112.此步骤参见上述子步骤1032,本技术实施例不再赘述。
113.服务端向第二终端发送下载指令,这样,可以使第二终端在下载待下载文件前对下载指令的合法性进行验证,并在合法性验证通过后,通过下载指令中的资源定位符从互联网自主下载待下载文件,避免下载到恶意文件。
114.子步骤2043,在确认存在处于离线状态的第二终端的情况下,将所述下载指令存储在所述服务端本地。
115.由于处于离线状态的第二终端暂时无法接收下载指令,因此,服务端在确定第二终端中存在处于离线状态的客户端后,需要暂时将下载指令存储在服务端本地,以供后续第二终端上线后向其发送下载指令。
116.子步骤2044,持续检测所述第二终端的状态,在检测到由离线状态转变为在线状态的第二终端的情况下,向所述由离线状态转变为在线状态的第二终端发送所述下载指令。
117.处于离线状态的第二终端可以是退出主动登录状态的客户端、登录失效或过期的客户端以及与服务端之间的网络连接中断的客户端。
118.对于离线状态的第二终端,有可能重新恢复在线状态,为了在其恢复在线状态时也可以在第一时间同步存储待下载文件,可以在处于离线状态的第二终端由离线状态转变为在线状态时,向其发送下载指令以使第二终端获取待下载文件。
119.具体的,可以定期向处于离线状态的第二终端发送登录验证信息,并在验证通过后,确定其状态由离线状态转变为在线状态;还可以将客户端设置为定期向服务端主动发送登录验证信息,服务端在接收到登录验证信息并验证通过后,确定其状态由离线状态转变为在线状态。确定第二终端状态由离线状态转变为在线状态的方式可以根据需要灵活设置,本技术实施例在此并不进行具体限定。
120.在本技术实施例中,对于离线状态的第二终端并不会在第一时间发送下载指令,不会将包含资源定位符的下载指令发送给登录验证信息不合法和网络连接不通的第二终端,不仅保护了用户的文件安全,还降低了服务端的网络负载,并且,在离线状态的第二终端转变为在线状态时立刻向之前为离线状态的第二终端发送下载指令,可以使用户在切换到第二终端并登陆后第一时间获取待下载文件,节省了用户时间,提升了用户体验。
121.子步骤2045,在向所有第二终端发送所述下载指令后,删除所述下载指令。
122.在对所有第二终端均发送过下载指令后,将服务端本地存储的下载指令删除,也可以在生成下载指令的预设存储时长(例如,7天)后,将下载指令从服务端本地删除,以释放服务端的存储空间。
123.步骤205、在确定所述第一终端删除所述待下载文件后,向所述第二终端发送删除指令,以供所述第二终端根据所述删除指令删除所述待下载文件。
124.用户通常会在使用完待下载文件后将其删除,当用户在第一终端删除待下载文件时,通常也不会在第二终端继续使用待下载文件。因此,服务端可以获取用户在所有登录的客户端中任一客户端对待下载文件的删除操作,并在确定用户在任一客户端对待下载文件执行删除操作后,向用户已登录的所有客户端中除上述用户执行删除操作的客户端外的客户端,发送删除指令,使所有用户登录的客户端可以同步删除待下载文件。需要说明的是,用户对待下载文件执行删除操作的客户端不一定是第一终端,可以是存储有待下载文件的任一客户端。
125.在本技术实施例中,用户可以通过对一个客户端中的待下载文件执行删除操作,从而同步删除所有登录的客户端中的相同文件,节省了用户删除文件的时间,提升了用户体验。
126.可选的,所述方法还包括:
127.步骤206、在确定所述第一终端和所述第二终端处于同一局域网络的情况下,向所述第一终端发送传输指令,以使得所述第一终端通过所述局域网络将所述待下载文件发送至所述第二终端。
128.由于第一终端和第二终端一般是属于同一用户的客户端,因此第一终端和第二终端有很大概率处于同一个局域网内,例如,用户的手机和笔记本电脑一般会同时连接家里或公司的wifi。
129.因此,服务端在接收到第一终端发送的下载请求后,可以首先确定第一终端是否已经存储有待下载文件,如果第一终端已经存储有待下载文件,则可以向第一终端发送包括第二终端标识的直传指令,第一终端根据第二终端标识在本地网络内查找是否存在第二终端,并将待下载文件通过本地网络发送至查找到的第二终端。其中,本地网络可以包括wifi网络、蓝牙网络等。
130.服务端还可以获取第一终端运行设备所连接的本地网络的网络识别码,以及第二终端运行设备所连接的本地网络的网络识别码;在两者网络识别码相同的情况下,向第一终端发送直传指令,以使得所述第一终端通过本地局域网将待发送文件发送至所述第二终端。
131.需要说明的是,在服务端在接收到第一终端发送的下载请求后,如果确定第一终端未存储有待下载文件,可以先向第一终端发送待下载文件或下载指令,在第一终端存储待下载文件后,再通过上述方式向第一终端发送直传指令。
132.进一步的,服务端在确定第一终端和第二终端不处于同一本地网络的情况下,还可以获取第一终端的第一位置信息和第二终端的第二位置信息,并通过第一位置信和第二位置信息和确定第一终端和第二终端之间的客户端距离,在客户端距离小于预设距离的情况下,向第一终端和第二终端发送联网指令,使第一终端和第二终端通过wifi或蓝牙建立本地连接,在确定第一终端和第二终端成功建立本地连接后,再向第一终端发送直传指令,使第一终端通过建立好的本地网络将待下载文件发送至第二终端。
133.在本技术实施例中,在第一终端存储有待下载文件,且第一终端和第二终端处于同一本地网络的情况下,可以通过向第一终端发送直传指令的方式,使第一终端通过本地网络将待下载文件传输至第二终端,并且,还能在第一终端和第二终端距离相近的情况下,使第一终端和第二终端之间建立本地网络,使第一终端通过建立好的本地网络将待下载文
件传输至第二终端。这样,不仅节省了用户的网络流量,还加快了第二终端获取待下载文件的速度。
134.综上所述,本技术实施例提供的一种文件传输方法,本技术可以接收第一终端发送的下载请求,并响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端,并向第二终端发送文件标识对应的待下载文件,因此用户可以仅通过对第一终端进行操作,即可将待下载文件下载到用户登录过的第二终端,使得用户在切换到使用第二终端时,可以立刻对待下载文件进行操作,从而节省了用户时间,提升了用户体验。
135.在上述实施例的基础上,本技术实施例还提供了一种文件传输系统,图4是本技术实施例提供的一种文件传输系统架构图。
136.如图4所示,以在线第二终端31为处于在线状态的客户端,离线第二终端32为处于离线状态的客户端为例,对文件传输系统进行说明:服务端10获取由第一终端20在接收到用户对待下载文件的下载操作后,向服务端10发送的下载请求,服务端10根据接收到的下载请求,确定出在线第二终端31和离线第二终端32,同时根据下载请求生成下载指令,并在所有第二终端存在离线状态的离线第二终端32时,将生成下载指令保存至数据库11中;服务端10向处于在线状态的在线第二终端31直接发送下载指令,使在线第二终端31根据下载指令中包含的资源定位符从内容分发网络40上下载对应的待下载文件;服务端10在确定离线第二终端32由离线状态转变为上线状态时,从数据库11中获取下载指令,并将下载指令发送至转变为在线状态的离线第二终端,使转变为在线状态的离线第二终端根据下载指令中包含的资源定位符从内容分发网络40上下载对应的待下载文件。
137.综上所述,本技术实施例提供的一种文件传输系统,本技术可以接收第一终端发送的下载请求,下载请求包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端;向第二终端发送文件标识对应的下载指令,以使第二终端根据下载指令获取待下载文件,因此用户可以仅通过对第一终端进行操作,即可将待下载文件下载到用户登录过的第二终端,使得用户在切换到使用第二终端时,可以立刻对待下载文件进行操作,从而节省了用户时间,提升了用户体验。
138.图5是本技术实施例提供的一种文件传输装置的框图,如图5所示,包括:
139.接收模块401,被配置为接收第一终端发送的下载请求,所述下载请求包括登录所述第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;
140.确定模块402,被配置为响应于所述下载请求,确定所述目标用户标识对应的所述目标用户登录的第二终端;
141.发送模块403,被配置为向所述第二终端发送所述文件标识对应的下载指令,以使所述第二终端根据所述下载指令获取所述待下载文件。
142.在一种可选实施方式中,所述发送模块还包括:
143.解析子模块,被配置为解析所述下载请求,确定对话用户标识、消息标识和所述待下载文件对应的资源定位符;其中,所述对话用户标识用于表征向所述第一终端发送所述待下载文件的用户对应的标识,所述消息标识用于表征包含所述待下载文件的即时通讯消息的标识;
144.生成子模块,被配置为根据所述目标用户标识、所述对话用户标识、所述消息标识
和所述待下载文件对应的资源定位符,生成下载指令;
145.第一发送子模块,被配置为向所述第二终端发送所述文件标识对应的下载指令,以使得所述第二终端在通过所述目标用户标识、所述对话用户标识和所述消息标识对所述下载指令进行验证后,根据所述资源定位符从服务端对应的内容分发网络获取所述待下载文件。
146.在一种可选实施方式中,所述发送模块还包括:
147.确定子模块,被配置为确定所述第二终端的状态,所述状态包括在线状态和离线状态;
148.第二发送子模块,被配置为向状态为在线状态的第二终端,发送所述文件标识对应的下载指令。
149.在一种可选实施方式中,所述发送模块还包括:
150.存储子模块,被配置为在确认存在处于离线状态的第二终端的情况下,将所述下载指令存储在服务端本地;
151.第三发送子模块,被配置为持续检测所述第二终端的状态,在检测到由离线状态转变为在线状态的第二终端的情况下,向所述由离线状态转变为在线状态的第二终端发送所述下载指令;
152.删除子模块,被配置为在向所有第二终端发送所述下载指令后,删除所述下载指令。
153.在一种可选实施方式中,所述装置还包括:
154.删除模块,被配置为在确定所述第一终端删除所述待下载文件后,向所述第二终端发送删除指令,以供所述第二终端根据所述删除指令删除所述待下载文件。
155.在一种可选实施方式中,所述装置还包括:
156.直传模块,被配置为在确定所述第一终端和所述第二终端处于同一局域网络的情况下,向所述第一终端发送传输指令,以使得所述第一终端通过所述局域网络将所述待下载文件通过所述局域网络发送至所述第二终端。
157.在一种可选实施方式中,所述接收模块还包括:
158.接收子模块,被配置为接收由所述第一终端,在响应于对选项菜单中同步下载选项的点按操作后,发送的下载请求,其中,所述选项菜单通过对所述待下载文件的文件标识的长按操作所触发。
159.综上,本技术实施例提供的一种文件传输装置,包括:接收模块,被配置为接收第一终端发送的下载请求,下载请求包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;确定模块,被配置为响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端;发送模块,被配置为向第二终端发送文件标识对应的下载指令,以使第二终端根据下载指令获取待下载文件。可以接收第一终端发送的下载请求,下载请求包括登录第一终端的目标用户对应的目标用户标识,以及待下载文件对应的文件标识;响应于下载请求,确定目标用户标识对应的目标用户登录的第二终端;向第二终端发送文件标识对应的下载指令,以使第二终端根据下载指令获取待下载文件,因此用户可以仅通过对第一终端进行操作,即可将待下载文件下载到用户登录过的第二终端,使得用户在切换到使用第二终端时,可以立刻对待下载文件进行操作,从而节省了用户时间,提升了用
户体验。
160.图6是根据一示例性实施例示出的一种电子设备600的框图。例如,电子设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
161.参照图6,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,多媒体组件608,音频组件610,输入/输出(i/o)的接口612,传感器组件614,以及通信组件616。
162.处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
163.存储器604用于存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
164.电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
165.多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的分界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
166.音频组件610用于输出和/或输入音频信号。例如,音频组件610包括一个麦克风(mic),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
167.i/o接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
168.传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600
方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
169.通信组件616用于便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
170.在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于实现本技术实施例提供的一种文件传输方法。
171.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,所述非临时性存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
172.图7是根据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图7,电子设备700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行本技术实施例提供的一种文件传输方法。
173.电子设备700还可以包括一个电源组件726被配置为执行电子设备700的电源管理,一个有线或无线网络接口750被配置为将电子设备700连接到网络,和一个输入输出(i/o)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm或类似。
174.本技术实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现所述的文件传输方法。
175.本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求指出。
176.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1