CN105338021B - 客户端与服务器的交互方法和系统及客户端和服务器 - Google Patents

客户端与服务器的交互方法和系统及客户端和服务器 Download PDF

Info

Publication number
CN105338021B
CN105338021B CN201410320030.0A CN201410320030A CN105338021B CN 105338021 B CN105338021 B CN 105338021B CN 201410320030 A CN201410320030 A CN 201410320030A CN 105338021 B CN105338021 B CN 105338021B
Authority
CN
China
Prior art keywords
file
server
identification code
client
page
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
CN201410320030.0A
Other languages
English (en)
Other versions
CN105338021A (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.)
Alibaba Singapore Holdings Pte Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410320030.0A priority Critical patent/CN105338021B/zh
Publication of CN105338021A publication Critical patent/CN105338021A/zh
Priority to HK16106732.2A priority patent/HK1218812A1/zh
Application granted granted Critical
Publication of CN105338021B publication Critical patent/CN105338021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施方式公开了一种客户端与服务器的交互方法和系统及客户端和服务器。客户端与服务器的交互方法包括:所述客户端访问预设页面,预设页面提供有预设地址,预设地址指向至少一个文件;客户端发出访问预设地址的通信请求,通信请求附带有标识至少一个文件的第一标识码和标识所述预设页面的第二标识码;第一服务器接收所述通信请求;第一服务器将第二标识码写入所述第一标识码对应的至少一个文件;第一服务器将所述至少一个文件发送至所述客户端;所述客户端接收所述至少一个文件;所述客户端从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。本申请可以减少服务器中文件的版本数量,节省存储空间。

Description

客户端与服务器的交互方法和系统及客户端和服务器
技术领域
本申请涉及数据通信领域,特别涉及一种客户端与服务器的交互方法和系统及客户端和服务器。
背景技术
现实生活中,人们经常浏览网页,并从网络上下载文件至本地电脑或者移动设备。具体的,举例为:用户可能从网站下载文本文件、音频文件、视频文件或应用文件。在一些情况下,由于不同网页用户访问的流量可能不同,使得由每个网页带来的文件下载量也不同。对于文本文件、音频文件和视频文件,可能需要了解不同网页的文件下载量。对于应用文件,可能更加关注网页带来的下载量对应的激活量,即用户下载应用文件之后进行安装使用的数量。
现有技术中,对于应用文件,每在一个网页发布一个文件下载链接时,通常会专门针对对应的网页制定一个版本的应用文件,在该应用文件内设置有能够标识其对应的网页的信息,使得该文件被下载或安装之后,可以便于商家统计下载量或激活量。在这种情况下,每新增一个设置下载链接的网页,便会增加一个应用文件的版本。在一些情况下,一个应用文件本身的字节数量可能比较庞大,针对同一个应用存储多个版本之后,会占用大量的存储空间,造成了存储资源的浪费。
发明内容
本申请实施方式的目的是提供一种能够节省存储空间的客户端与服务器的交互方法和系统及客户端和服务器。
为解决上述技术问题,本申请提供一种客户端与服务器的交互方法,其包括:所述客户端访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;所述客户端发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;第一服务器接收所述通信请求;所述第一服务器将所述第二标识码写入所述第一标识码对应的至少一个文件;所述第一服务器将所述至少一个文件发送至所述客户端;所述客户端接收所述至少一个文件;所述客户端从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
本申请还提供一种客户端与服务器的交互系统,第一服务器包括:请求接收模块,用于接收所述客户端发出的通信请求;写入模块,用于将所述通信请求附带的第二标识码写入所述通信请求附带的第一标识码对应的所述至少一个文件;文件发送模块,用于将所述至少一个文件发送至所述客户端;所述客户端包括:访问模块,用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;请求发送模块,用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;文件接收模块,用于接收所述第一标识码对应的至少一个文件;标识码发送模块,用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
本申请还提供一种客户端与服务器的交互方法,包括:访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;接收所述第一标识码对应的至少一个文件;从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
本申请还提供一种客户端,包括:访问模块,用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;请求发送模块,用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面第二标识码;文件接收模块,用于接收所述第一标识码对应的至少一个文件;标识码发送模块,用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至服务器。
本申请还提供一种客户端与服务器的交互方法,包括:接收所述客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码;将所述第二标识码写入所述第一标识码对应的至少一个文件;将所述至少一个文件发送至所述客户端。
本申请还提供一种服务器,包括:请求接收模块,用于接收客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码;写入模块,用于将所述第二标识码写入所述第一标识码对应的所述至少一个文件;文件发送模块,用于将所述至少一个文件发送至所述客户端。
由以上本申请实施方式提供的技术方案可见,本申请通过在通信请求中附带第一标识码和第二标识码,并通过第一标识码标识文件,第二标识码标识产生通信请求的页面,服务器通过第一标识码找到文件后,将第二标识码写入文件中,进而在服务器将文件发送至客户端之后,客户端可以将第二标识码提供给第二服务器。本申请可以使服务器端无需针对不用页面设置不同版本的文件,很大程度上减少了文件的版本数量,节省了存储资源。
附图说明
为了更清楚地说明本申请实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一个实施方式提供的客户端与服务器的交互方法的流程图;
图2为本申请一个实施方式提供的客户端与服务器的交互方法的流程中,获取文件的子步骤流程图;
图3为本申请一个实施方式提供的客户端与服务器的交互方法的流程图;
图4为本申请一个实施方式提供的客户端与服务器的交互系统的模块图;
图5为本申请一个实施方式提供的客户端与服务器的交互方法的流程图;
图6为本申请一个实施方式提供的客户端的模块图;
图7为本申请一个实施方式提供的客户端与服务器的交互方法的流程图;
图8为本申请一个实施方式提供的客户端与服务器的交互方法中,获取文件的子步骤流程图;
图9为本申请一个实施方式提供的客户端与服务器的交互方法的流程图;
图10为本申请一个实施方式提供的服务器的模块图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都应当属于本申请保护的范围。
请参阅图1,为本申请的一个实施方式提供的客户端与服务器的交互方法,其包括如下步骤。
步骤S10:客户端访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件。
在本实施方式中,客户端可以是任何可以访问网络的终端设备。具体的,举例为:客户端可以是台式电脑、平板电脑、笔记本电脑或移动电话,或者智能可穿戴设备,例如,智能手表、智能手环、智能眼镜或智能头戴设备等。在一个优选实施例中,所述终端设备可以是安装有安卓(Android)系统的终端。
在本实施方式中,预设页面可以是一个网页。所述预设页面的格式可以为HTML、HTM、ASP、ASPX、PHP或JSP等等。当然,预设页面也可以是客户端的应用中的一个界面。所述预设地址可以是所述预设页面中提供的一个文件下载的链接,用户可以在预设页面通过访问预设地址下载所述预设地址指向的文件。具体的,举例为:在服务器中存储有文件“Test.apk”,可以在预设页面A设置有访问Test.apk的预设地址,即设置有访问Test.apk的链接,在所述链接被触发后,会向服务器发出通信请求,以请求访问文件Test.apk。当然,接收通信请求的服务器和存储文件的服务器可以不同,但二者之间存在联系,使得接收通信请求的服务器能够获取文件。
步骤S20:所述客户端发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码。
在本实施方式中,通信请求可以是客户端依照网络协议向服务器发出的信息,用于表示客户端请求访问服务器中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端可以向服务器发出“request”请求,在该请求中可以附带有一些客户端所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码和第二标识码可以作为通信请求的一部分,由客户端发送至服务器。第一标识码可以仅标识一个文件,也可以标识若干文件。在标识一个文件时,第一标识码可以是客户端要访问的文件的文件名,或者可以是客户端要访问的文件在服务器中的存储地址,或者可以服务器按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
步骤S30:第一服务器接收所述通信请求。
步骤S40:所述第一服务器将所述第二标识码写入所述第一标识码对应的至少一个文件。
在本实施方式中,第一服务器接收通信请求之后,获取通信请求中附带的第一标识码,依据第一标识码查找对应的文件。对应于前述描述的情况,在第一标识码仅标识一个文件时,若第一标识码是文件的文件名,第一服务器在其存储的文件中查找文件名与第一标识码相同的文件;若第一标识码是文件在第一服务器中的存储地址,客户端依据第一标识码至相应的地址获取文件;若第一标识码是文件在第一服务器中的文件编号,第一服务器依照该文件编号查找相应的文件。在第一标识码标识若干个文件时,第一服务器可以在其存储的文件中查找文件名中具有第一标识码的文件。具体的,举例为:第一标识码是“AliexpressHD”,其包括在一个或若干个文件的文件名中,第一服务器在本地存储的文件中查找名称包括“AliexpressHD”的文件。
在本实施方式中,第一服务器获取文件之后,将第二标识码写入文件中,如此可以标识文件对应的页面。在一些情况下,在很多页面都可以设置有下载文件的链接,为了便于后续统计每个页面的下载量或软件下载后的激活量,将第二标识码写入文件中,由于第二标识码能够标识触发下载文件的链接所在的页面,使得文件被下载之后,便于统计下载量或者软件的激活量。
在本实施方式中,对应前述描述的情况,文件的数量是一个时,第二标识码可以写入文件的属性项、文件内容或文件名中。对应于不同类型的文件,第二标识码写入的位置可以不相同。具体的,举例为:文件为图片文件,比如扩展名为“.jpg”,可以将第二标识码写入文件的属性项中;文件为文字文件,比如扩展名为“.txt”,可以将第二标识码写入文件的文字内容的某一个位置,如文字内容的末尾、文字内容最开始的部分或者文字内容的中间部分;文件为软件安装程序,比如扩展名为“.exe”或“.apk”等,可以将第二标识码写入文件的文件名中,比如将第二标识码写入文件名的末尾,并通过任意的符号将第二标识码与原有的文件名分隔。当然,文件的格式以及第二标识码写入文件的位置不限于上述描述,在此不再进行更多的举例,本领域技术人员在本发明技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本发明相同或相似,均应涵盖于本申请保护范围内。当文件的数量是若干个时,可以将每个文件均写入第二标识码,或者在若干个文件中选择一个写入第二标识码,写入的方式见上文描述。
所述步骤S50:所述第一服务器将所述至少一个文件发送至所述客户端。
在本实施方式中,第一服务器可以依照网络协议将文件发送至客户端。具体的,举例为:第一服务器可以基于HTTP协议或FTP协议,将文件发送至客户端。相应的,在第一服务器发出的文件中具有第二标识码,通过第二标识码能够明确标识触发本次下载的页面,使得在文件被客户端下载之后,可以进一步统计预设页面带来的下载量或激活量。再者,不同的客户端在预定页面下载了文件时,无需针对不同的客户端对文件进行额外的处理,使得本申请提供的方法具有较好的通用性。
步骤S60:所述客户端接收所述至少一个文件。
在本实施方式中,客户端依照网络协议接收第一服务器发送的至少一个文件。
步骤S70:所述客户端从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
在本实施方式中,客户端接收文件后,读取文件中的第二标识码,依照网络协议将第二标识码发送至第二服务器,由于第二标识码可以标识触发下载文件的链接的页面,如此以便于第二服务器对页面下载量或激活量的统计。当文件的数量为若干个时,若每个文件中都具有所述第二标识码,此时客户端只需读取任意一个文件的第二标识码发送给第二服务器;若为若干个文件中的一个文件具有第二标识码,此时客户端仅从该文件中读取第二标识码发送给第二服务器,在这个过程中,客户端可以采用逐一查阅每个文件是否被写入第二标识码的方式找到被写入标识码的文件,当然被写入标识码的文件也可以设置有预定标识,如此便于客户端查找。
在本实施方式中,第二服务器可以与提供文件下载的第一服务器是同一个服务器,也可以是不同的服务器。若第二服务器和上述提供文件下载的第一服务器是同一个服务器,依照现有的网络通信协议,客户端在接收文件时,便可以获知第一服务器的通信地址,使得客户端获取第二标识码之后,可以将第二标识码发送至所述第一服务器。若第二服务器和上述提供文件下载的第一服务器不是同一个服务器,可以在文件中预先设置有第二服务器的通信地址,客户端收到文件之后,从文件中读取通信地址和第二标识码,将第二标识码发送至通信地址,即发送至第二服务器。如此第二服务器在接收到第二标识码之后,便可以记数页面的下载量或软件的激活量。进一步的,可以在多个可以下载文件的服务器设置所述文件,实现不同的网页可以提供不同的文件下载地址,但最终都可以通过第二服务器记录每个页面的下载量或软件的激活量。
本申请实施方式提供的客户端与服务器的交互方法,通过在通信请求中附带第一标识码和第二标识码,并通过第一标识码标识文件,第二标识码标识产生通信请求的页面,第一服务器通过第一标识码找到文件后,将第二标识码写入文件中,进而在第一服务器将文件发送至客户端之后,客户端可以将第二标识码提供给预定服务器,预定服务器便可以进行相应的计数。本申请可以使服务器端无需针对不用页面设置不同版本的文件,在服务器端可以只存储一个版本的文件,节省了存储资源。再者在文件发生升级时,也无需针对不同页面进行变更,减少了服务器中文件管理的工作量。
请参阅图2,在本申请的一个实施方式中,在所述步骤S40中还可以包括如下步骤。
步骤S41:所述第一服务器确定与所述第一标识码对应的至少一个文件。
步骤S43:所述第一服务器获取最新版本的所述至少一个文件。
步骤S45:所述第一服务器将所述第二标识码写入最新版本的所述至少一个文件。
在本实施方式中,当文件发布至第一服务器之后,后续文件可能会发生更新,使得可能在第一服务器中存在多个版本的所述文件,在默认情况下,第一服务器向客户端发出的文件为最新版本的文件。具体的,举例为:文件可能是安卓系统的应用安装文件,其扩展名为“.apk”,例如“AliexpressHD.apk”,初始发布时,可以为第一版。后续开发商可能升级了软件版本比如第二版或第三版等,此时在第一服务器中可能会存在多个版本并存的情况,以便于一些只能运行低版本软件的客户端下载较低版本的软件,而默认情况下,第一服务器将最新版本的软件提供给客户端。
在本实施方式中,第一服务器获取最新版本的文件的方式可以为:在第一服务器中可以设置有索引列表,在索引列表中可以对应记录有第一服务器对文件分配的文件编号、文件名、版本号和存储地址。具体的,举例为表1。第一标识码可以是文件编号或文件名,第一服务器接收第一标识码之后,进一步查找软件最新的版本,并获取最新版本的文件,进而可以将最新版本的文件提供给客户端。
表1
文件编号 文件名 版本号 存储地址
a1 AliexpressHD V1 Localhost/program/AliexpressHD/V1
a1 AliexpressHD V2 Localhost/program/AliexpressHD/V2
a2 手机淘宝 V1 Localhost/program/手机淘宝/V1
a2 手机淘宝 V2 Localhost/program/手机淘宝/V2
在本实施方式中,第一服务器获取最新版本的文件的方式可以为:第一标识码可以是文件名,在第一服务器存储的文件的名称中具有文件的版本号码,第一服务器获取第一标识码之后,会在本地存储的文件中,查找文件名与第一标识码相同的文件,然后比较找到的至少一个文件的版本号码,获取最新版本的文件。
在本申请的一个实施方式中,所述通信请求中还附带有版本信息,在所述步骤S40还可以包括中所述第一服务器根据所述第一标识码和所述版本信息获取对应的至少一个文件,将所述第二标识码写入所述至少一个文件。
在本实施方式中,客户端向第一服务器发出的通信请求中还附带有版本信息,使得客户端指定了下载文件的版本。在一些情况下,第一服务器中可能存储有多个版本的文件,用户想要获取的可能是其中的某一个版本。请一并参阅上表1,例如“AliexpressHD”共有二个版本,分别为V1和V2,用户想要获取V1版本的文件,通过在客户端发出的通信请求中附带有V1,使得第一服务器获取本地存储的文件时,能够根据第一标识码和版本信息,找到对应V1版本的文件。
在本申请的一个实施方式中,在所述步骤S40中:所述第一服务器将所述第二标识码写入所述至少一个文件的文件名中。
在本实施方式中,所述文件是安卓系统中的应用安装文件,其扩展名为“.apk”。由于扩展名为“.apk”的文件,没有文件属性可以写入数据,若在其文件内容中写入第二标识码,可能会引起文件的数据错误,故此将第二标识码写入文件名中,既便于写入操作,又便于后续客户端查找第二标识码。在文件的数量为若干个时,可以在每个文件的文件名都写入第二标识码,也可以在其中一个文件的文件名中写入第二标识码。
请参阅图3,在本申请的一个实施方式中,所述客户端与服务器的交互方法还包括如下步骤。
步骤S80:所述第二服务器接收所述第二标识码。
步骤S90:所述第二服务器确定所述第二标识码对应的页面,增加所述页面对应的计数。
在本实施方式中,第二服务器接收到第二标识码后,会为相应的页面增加计数。计数可以是页面的下载量,或者当文件是应用安装文件时,客户端从下载文件后安装应用的激活量。在至少一个页面设置有文件的下载链接时,第二服务器中可以对应所述至少一个页面设置有至少一个计数,每个计数用于记录页面的下载量或激活量,如此可以便于后续的数据分析。如前文所述,所述第一服务器和所述第二服务器可以是同一个服务器,也可以是不同的服务器。
请参阅图4,本申请实施方式还提供一种客户端与服务器的交互系统100,其包括:客户端110和第一服务器120。
在本实施方式中,客户端110可以是任何可以访问网络的终端设备。具体的,举例为:客户端110可以是台式电脑、平板电脑、笔记本电脑或移动电话,或者智能可穿戴设备,例如,智能手表、智能手环、智能眼镜或智能头戴设备等。在一个优选实施例中,所述终端设备可以是安装有安卓(Android)系统的终端。客户端110可以包括:访问模块10、请求发送模块20、文件接收模块60和标识码发送模块70。
访问模块10用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件。
在本实施方式中,预设页面可以是一个网页。所述预设页面的格式可以为HTML、HTM、ASP、ASPX、PHP或JSP等等。当然,预设页面也可以是客户端的应用中的一个界面。所述预设地址可以是所述预设页面中提供的一个文件下载的链接,用户可以在预设页面通过访问预设地址下载所述预设地址指向的文件。在一个具体的实施方式中,文件可以存储在第一服务器120中。具体的,举例为:在第一服务器120中存储有文件“Test.apk”,可以在预设页面A设置有访问Test.apk的预设地址,即设置有访问Test.apk的链接,在所述链接被触发后,会向第一服务器发出通信请求,以请求访问文件Test.apk。
请求发送模块20用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码。
在本实施方式中,通信请求可以是请求发送模块20依照网络协议向第一服务器120发出的信息,用于表示客户端110请求访问第一服务器120中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端110可以向第一服务器120发出“request”请求,在该请求中可以附带有一些客户端110所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码和第二标识码可以作为通信请求的一部分,由请求发送模块20发送至第一服务器120。第一标识码可以仅标识一个文件,也可以标识若干文件。在标识一个文件时,第一标识码可以是客户端110要访问的文件的文件名,或者可以是客户端110要访问的文件在第一服务器120中的存储地址,或者可以第一服务器120按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干个文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端110向第一服务器120发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端110向第一服务器120发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
文件接收模块60用于接收所述第一标识码对应的至少一个文件。
在本实施方式中,文件接收模块60依照网络协议接收第一服务器120发送的与所述第一标识码对应的文件,将文件保存在客户端110中。
标识码发送模块70用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
在本实施方式中,文件接收模块60接收文件后,标识码发送模块70读取文件中的第二标识码,依照网络协议将第二标识码发送至第二服务器,由于第二标识码可以标识触发下载文件的链接的页面,如此以便于第二服务器对页面下载量或激活量的统计。当文件的数量为若干个时,若每个文件中都具有所述第二标识码,此时客户端110只需读取任意一个文件的第二标识码发送给第二服务器;若为若干个文件中的一个文件具有第二标识码,此时客户端仅110从该文件中读取第二标识码发送给第二服务器,在这个过程中,客户端110可以采用逐一查阅每个文件是否被写入第二标识码的方式找到被写入标识码的文件,当然被写入标识码的文件也可以设置有预定标识,如此便于客户端110查找。
在本实施方式中,第二服务器可以与提供文件下载的第一服务器120是同一个服务器,也可以是不同的服务器。若第二服务器和上述提供文件下载的第一服务器120是同一个服务器,依照现有的网络通信协议,客户端110在接收文件时,便可以获知第一服务器120的通信地址,使得客户端110获取第二标识码之后,可以将第二标识码发送至所述第一服务器120。若第二服务器和上述提供文件下载的第一服务器不相同,可以在文件中预先设置有第二服务器的通信地址,客户端110收到文件之后,从文件中读取通信地址和第二标识码,将第二标识码发送至通信地址,即发送至第二服务器。如此第二服务器在接收到第二标识码之后,便可以记数页面的下载量或软件的激活量。进一步的,可以在多个可以下载文件的第一服务器设置所述文件,实现不同的网页可以提供不同的文件下载地址,但最终都可以通过第二服务器记录每个页面的下载量或软件的激活量。
第一服务器120包括:请求接收模块30、写入模块40和文件发送模块50。
请求接收模块30用于接收所述客户端110发出的通信请求。
在本实施方式中,请求接收模块30可以是适配于通信协议的网络接口单元,还可以是驱动上述网络接口单元工作的软体,或者包括前述二者。
写入模块40用于将所述通信请求附带的第二标识码写入所述通信请求附带的第一标识码对应的所述至少一个文件。
在本实施方式中,写入模块40依据第一标识码查找对应的文件。对应于前述描述的情况,在第一标识码仅标识一个文件时,若第一标识码是文件的文件名,第一服务器120在其存储的文件中查找文件名与第一标识码相同的文件;若第一标识码是文件在第一服务器120中的存储地址,客户端110依据第一标识码至相应的地址获取文件;若第一标识码是文件在第一服务器120中的文件编号,第一服务器120依照该文件编号查找相应的文件。在第一标识码标识若干个文件时,第一服务器可以在其存储的文件中查找文件名中具有第一标识码的文件。具体的,举例为:第一标识码是“AliexpressHD”,其包括在一个或若干文件的文件名中,第一服务器120在本地存储的文件中查找名称包括“AliexpressHD”的文件。
在本实施方式中,写入模块40找到文件之后,将第二标识码写入文件中,如此可以在文件中设置标识以表明其对应的页面。在一些情况下,在很多页面都可以设置有下载文件的链接,为了便于后续统计每个页面的下载量或软件下载后的激活量,将第二标识码写入文件中,由于第二标识码能够标识触发下载文件的连接所在的页面,使得文件被下载之后,便于统计下载量或者软件的激活量。
在本实施方式中,对应前述描述的情况,文件的数量是一个时,第二标识码可以写入文件的属性项、文件内容或文件名中。对应于不同类型的文件,第二标识码写入的位置可以不相同。具体的,举例为:文件为图片文件,比如扩展名为“.jpg”,可以将第二标识码写入文件的属性项中;文件为文字文件,比如扩展名为“.txt”,可以将第二标识码写入文件的文字内容的某一个位置,如文字内容的末尾、文字内容最开始的部分或者文字内容的中间部分;文件为软件安装程序,比如扩展名为“.exe”或“.apk”等,可以将第二标识码写入文件的文件名中,比如将第二标识码写入文件名的末尾,并通过任意的符号将第二标识码与原有的文件名分隔。当然,文件的格式以及第二标识码写入文件的位置不限于上述描述,在此不再进行更多的举例,本领域技术人员在本发明技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本发明相同或相似,均应涵盖于本申请保护范围内。当文件的数量是若干个时,可以将每个文件均写入第二标识码,或者在若干个文件中选择一个写入第二标识码,写入的方式见上文描述。
文件发送模块50用于将所述至少一个文件发送至所述客户端110。
在本实施方式中,第一服务器120可以依照网络协议将文件发送至客户端110。具体的,举例为:第一服务器120可以基于HTTP协议或FTP协议,将文件发送至客户端110。相应的,在第一服务器120发出的文件中具有第二标识码,通过第二标识码能够明确标识触发本次下载的页面,使得在文件被客户端110下载之后,可以进一步统计预设页面带来的下载量或激活量。再者,不同的客户端110在预定页面下载了文件时,无需针对不同的客户端110对文件进行额外的处理,使得本申请提供的方法具有较好的通用性。
请参阅图5,本申请实施方式还提供一种客户端与服务器的交互方法,其包括如下步骤。
步骤S11:访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件。
在本实施方式中,可以使用客户端访问预设页面。客户端可以是任何可以访问网络的终端设备。具体的,举例为:客户端可以是台式电脑、平板电脑、笔记本电脑或移动电话,或者智能可穿戴设备,例如,智能手表、智能手环、智能眼镜或智能头戴设备等。在一个优选实施例中,所述终端设备可以是安装有安卓(Android)系统的终端。
在本实施方式中,预设页面可以是一个网页。所述预设页面的格式可以为HTML、HTM、ASP、ASPX、PHP或JSP等等。当然,预设页面也可以是客户端的应用中的一个界面。所述预设地址可以是所述预设页面中提供的一个文件下载的链接,用户可以在预设页面通过访问预设地址下载所述预设地址指向的文件。在一个具体的实施方式中,文件可以存储在服务器中。具体的,举例为:在服务器中存储有文件“Test.apk”,可以在预设页面A设置有访问Test.apk的预设地址,即设置有访问Test.apk的链接,在所述链接被触发后,会向服务器发出通信请求,以请求访问文件Test.apk。
步骤S21:发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码。
在本实施方式中,通信请求可以是客户端依照网络协议向服务器发出的信息,用于表示客户端请求访问服务器中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端可以向服务器发出“request”请求,在该请求中可以附带有一些客户端所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码和第二标识码可以作为通信请求的一部分,由客户端发送至服务器。第一标识码可以仅标识一个文件,也可以标识若干文件。在标识一个文件时,第一标识码可以是客户端要访问的文件的文件名,或者可以是客户端要访问的文件在服务器中的存储地址,或者可以服务器按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
在一个实施方式中,通信请求中还可以附带有所述文件的版本信息。通过在通信请求中附带版本信息,可以实现下载文件的指定版本。在一些情况下,服务器中可能存储有多个版本的文件,用户想要获取的可能是其中的某一个版本,例如文件共有三个版本,分别为V1、V2和V3,用户想要获取V2版本,通过在客户端发出的通信请求中附带有V2,使得服务器获取本地存储的文件时,能够根据第一标识码和版本信息,找到对应V2版本的文件。
步骤S61:接收所述第一标识码对应的至少一个文件。
在本实施方式中,客户端依照网络协议接收服务器发出的至少一个文件。
步骤S71:从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至服务器。
在本实施方式中,客户端接收文件后,读取文件中的第二标识码,依照网络协议将第二标识码发送至服务器,由于第二标识码可以标识触发下载文件的链接的页面,如此以便于服务器对页面下载量或激活量的统计。当文件的数量为若干个时,若每个文件中都具有所述第二标识码,此时客户端只需读取任意一个文件的第二标识码发送给第二服务器;若为若干个文件中的一个文件具有第二标识码,此时客户端仅从该文件中读取第二标识码发送给第二服务器,在这个过程中,客户端可以采用逐一查阅每个文件是否被写入第二标识码的方式找到被写入标识码的文件,当然被写入标识码的文件也可以设置有预定标识,如此便于客户端查找。
在本实施方式中,接收第二标识码的服务器可以与提供文件下载的服务器是同一个服务器,也可以是不同的服务器。若二者是同一个服务器,依照现有的网络通信协议,客户端在接收文件时,便可以获知服务器的通信地址,使得客户端获取第二标识码之后,可以将第二标识码发送至所述服务器。若二者不是同一个服务器,可以在文件中预先设置有接收第二标识码的服务器的通信地址,客户端收到文件之后,从文件中读取通信地址和第二标识码,将第二标识码发送至通信地址,即发送至接收第二标识码的服务器。如此服务器在接收到第二标识码之后,便可以记数页面的下载量或软件的激活量。进一步的,可以在多个可以下载文件的服务器设置所述文件,实现不同的网页可以提供不同的文件下载地址,但最终都可以通过接收第二标识码的服务器记录每个页面的下载量或软件的激活量,便于数据统计。
请参阅图6,本申请实施方式还提供一种客户端110。在实施方式中,客户端110可以是任何可以访问网络的终端设备。具体的,举例为:客户端110可以是台式电脑、平板电脑、笔记本电脑或移动电话,或者智能可穿戴设备,例如,智能手表、智能手环、智能眼镜或智能头戴设备等。在一个优选实施例中,所述终端设备可以是安装有安卓(Android)系统的终端。客户端110可以包括:访问模块10、请求发送模块20、文件接收模块60和标识码发送模块70。
访问模块10用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件。
在本实施方式中,预设页面可以是一个网页。所述预设页面的格式可以为HTML、HTM、ASP、ASPX、PHP或JSP等等。当然,预设页面也可以是客户端的应用中的一个界面。所述预设地址可以是所述预设页面中提供的一个文件下载的链接,用户可以在预设页面通过访问预设地址下载所述预设地址指向的文件。在一个具体的实施方式中,文件可以存储在服务器中。具体的,举例为:在服务器中存储有文件“Test.apk”,可以在预设页面A设置有访问Test.apk的预设地址,即设置有访问Test.apk的链接,在所述链接被触发后,会向服务器发出通信请求,以请求访问文件Test.apk。
请求发送模块20用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面第二标识码。
在本实施方式中,通信请求可以是请求发送模块20依照网络协议向服务器发出的信息,用于表示客户端110请求访问服务器中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端110可以向服务器发出“request”请求,在该请求中可以附带有一些客户端110所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码和第二标识码可以作为通信请求的一部分,由请求发送模块20发送至服务器。第一标识码可以仅标识一个文件,也可以标识若干个文件。在标识一个文件时,第一标识码可以是客户端110要访问的文件的文件名,或者可以是客户端要访问的文件在服务器中的存储地址,或者可以服务器按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干个文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端110向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端110向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
文件接收模块60用于接收所述第一标识码对应的至少一个文件。
在本实施方式中,文件接收模块60依照网络协议接收第一服务器发送的与所述第一标识码对应的文件,将文件保存在客户端110中。
标识码发送模块70用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至服务器。
在本实施方式中,文件接收模块60接收文件后,标识码发送模块70读取文件中的第二标识码,依照网络协议将第二标识码发送至服务器,由于第二标识码可以标识触发下载文件的链接的页面,如此以便于服务器对页面下载量或激活量的统计。当文件的数量为若干个时,若每个文件中都具有所述第二标识码,此时客户端110只需读取任意一个文件的第二标识码发送给服务器;若为若干个文件中的一个文件具有第二标识码,此时客户端仅110从该文件中读取第二标识码发送给服务器,在这个过程中,客户端110可以采用逐一查阅每个文件是否被写入第二标识码的方式找到被写入标识码的文件,当然被写入标识码的文件也可以设置有预定标识,如此便于客户端110查找。
在本实施方式中,接收第二标识码的服务器可以与提供文件下载的服务器是同一个服务器,也可以是不同的服务器。若二者是同一个服务器,依照现有的网络通信协议,客户端在接收文件时,便可以获知服务器的通信地址,使得客户端获取第二标识码之后,可以将第二标识码发送至所述服务器。若二者不是同一个服务器,可以在文件中预先设置有接收第二标识码的服务器的通信地址,客户端收到文件之后,从文件中读取通信地址和第二标识码,将第二标识码发送至通信地址,即发送至接收第二标识码的服务器。如此服务器在接收到第二标识码之后,便可以记数页面的下载量或软件的激活量。进一步的,可以在多个可以下载文件的服务器设置所述文件,实现不同的网页可以提供不同的文件下载地址,但最终都可以通过接收第二标识码的服务器记录每个页面的下载量或软件的激活量,便于数据统计。
请参阅图7,本申请实施方式还提供一种客户端与服务器的交互方法,其包括如下步骤。
步骤S32:接收客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码。
在本实施方式中,通信请求可以是客户端依照网络协议向服务器发出的信息,用于表示客户端请求访问服务器中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端可以向服务器发出“request”请求,在该请求中可以附带有一些客户端所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码可以仅标识一个文件,也可以标识若干文件。在标识一个文件时,第一标识码可以是客户端要访问的文件的文件名,或者可以是客户端要访问的文件在服务器中的存储地址,或者可以服务器按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
步骤S42:将所述第二标识码写入所述第一标识码对应的至少一个文件。
在本实施方式中,服务器接收通信请求之后,获取通信请求中附带的第一标识码,依据第一标识码查找对应的文件。对应于前述描述的情况,在第一标识码仅标识一个文件时,若第一标识码是文件的文件名,服务器在其存储的文件中查找文件名与第一标识码相同的文件;若第一标识码是文件在服务器中的存储地址,客户端依据第一标识码至相应的地址获取文件;若第一标识码是文件在服务器中的文件编号,服务器依照该文件编号查找相应的文件。在第一标识码标识若干个文件时,第一服务器可以在其存储的文件中查找文件名中具有第一标识码的文件。具体的,举例为:第一标识码是“AliexpressHD”,其包括在一个或若干个文件的文件名中,服务器在本地存储的文件中查找名称包括“AliexpressHD”的文件。
在本实施方式中,服务器获取文件之后,将第二标识码写入文件中,如此可以标识文件对应的页面。在一些情况下,在很多页面都可以设置有下载文件的链接,为了便于后续统计每个页面的下载量或软件下载后的激活量,将第二标识码写入文件中,由于第二标识码能够标识触发下载文件的连接所在的页面,使得文件被下载之后,便于统计下载量或者软件的激活量。
在本实施方式中,对应前述描述的情况,文件的数量是一个时,第二标识码可以写入文件的属性项、文件内容或文件名中。对应于不同类型的文件,第二标识码写入的位置可以不相同。具体的,举例为:文件为图片文件,比如扩展名为“.jpg”,可以将第二标识码写入文件的属性项中;文件为文字文件,比如扩展名为“.txt”,可以将第二标识码写入文件的文字内容的某一个位置,如文字内容的末尾、文字内容最开始的部分或者文字内容的中间部分;文件为软件安装程序,比如扩展名为“.exe”或“.apk”等,可以将第二标识码写入文件的文件名中,比如将第二标识码写入文件名的末尾,并通过任意的符号将第二标识码与原有的文件名分隔。当然,文件的格式以及第二标识码写入文件的位置不限于上述描述,在此不再进行更多的举例,本领域技术人员在本发明技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本发明相同或相似,均应涵盖于本申请保护范围内。当文件的数量是若干个时,可以将每个文件均写入第二标识码,或者在若干个文件中选择一个写入第二标识码,写入的方式见上文描述。
步骤S51:将所述至少一个文件发送至所述客户端。
在本实施方式中,服务器可以依照将文件发送至客户端。具体的,举例为:服务器可以基于HTTP协议或FTP协议,将文件发送至客户端。相应的,在第一服务器发出的文件中具有第二标识码,通过第二标识码能够明确标识触发本次下载的页面,使得在文件被客户端下载之后,可以进一步统计预设页面带来的下载量或激活量。再者,不同的客户端在预定页面下载了文件时,无需针对不同的客户端对文件进行额外的处理,使得本申请提供的方法具有较好的通用性。
请参阅图8,在本申请的一个实施方式中,在所述步骤S42中还可以包括如下步骤。
步骤S44:确定与所述第一标识码对应的至少一个文件。
步骤S46:获取最新版本的所述至少一个文件。
步骤S48:将所述第二标识码写入最新版本的所述至少一个文件。
在本实施方式中,当文件发布至服务器之后,后续文件可能会发生更新,使得可能在服务器中存在所述文件的多个版本,在默认情况下,服务器向客户端发出的文件为最新版本的文件。具体的,举例为:文件可能是安卓系统的应用安装文件,其扩展名为“.apk”,例如“AliexpressHD.apk”,初始发布时,可以为第一版。后续开发商可能升级了软件版本比如第二版或第三版等,此时在服务器中可能会存在多个版本并存的情况,以便于一些只能运行低版本软件的客户端下载较低版本的软件,而默认情况下,服务器将最新版本的软件提供给客户端。
在本实施方式中,服务器获取最新版本的文件的方式可以为:在服务器中可以设置有索引列表,在索引列表中可以对应记录有服务器对文件分配的文件编号、文件名、版本号和存储地址。具体的,举例为表2。第一标识码可以是文件名或文件编号,服务器接收第一标识码之后,进一步查找软件最新的版本,并获取最新版本的文件,进而可以将最新版本的文件提供给客户端。
表2
文件编号 文件名 版本号 存储地址
a1 AliexpressHD V1 Localhost/program/AliexpressHD/V1
a1 AliexpressHD V2 Localhost/program/AliexpressHD/V2
a2 手机淘宝 V1 Localhost/program/手机淘宝/V1
a2 手机淘宝 V2 Localhost/program/手机淘宝/V2
在本实施方式中,服务器获取最新版本的文件的方式可以为:第一标识码可以是文件名,在服务器存储的文件的名称中具有文件的版本号码,服务器获取第一标识码之后,会在本地存储的文件中,查找文件名与第一标识码相同的文件,然后比较找到的至少一个文件的版本号码,获取最新版本的文件。
在本申请的一个实施方式中,所述通信请求中还附带有版本信息,在所述步骤S42中还包括根据所述第一标识码和所述版本信息获取对应的至少一个文件,将所述第二标识码写入所述至少一个文件。
在本实施方式中,客户端向服务器发出的通信请求中还附带有版本信息,使得客户端指定了下载文件的版本。在一些情况下,服务器中可能存储有多个版本的文件,用户想要获取的可能是其中的某一个版本。请一并参阅上表2,例如“AliexpressHD”共有二个版本,分别为V1和V2,用户想要获取V1版本的文件,通过在客户端发出的通信请求中附带有V1,使得服务器获取本地存储的文件时,能够根据第一标识码和版本信息,找到对应V1版本的文件。
在本申请的一个实施方式中,在所述步骤S42中:将所述第二标识码写入所述至少一个文件的文件名中。
在本实施方式中,所述文件是安卓系统中的应用安装文件,其扩展名为“.apk”。由于扩展名为“.apk”的文件,没有文件属性可以写入数据,若在其文件内容中写入第二标识码,可能会引起文件的数据错误,故此将第二标识码写入文件名中,既便于写入操作,又便于后续客户端查找第二标识码。在文件的数量为若干个时,可以在每个文件的文件名都写入第二标识码,也可以在其中一个文件的文件名中写入第二标识码。
请参阅图9,在本申请的一个实施方式中,所述客户端与服务器的交互方法还包括如下步骤。
步骤S81:接收所述客户端发出的第二标识码。
步骤S91:确定所述第二标识码对应的页面,增加所述页面对应的计数。
在本实施方式中,服务器接收到第二标识码后,会为相应的页面增加计数。计数可以是页面的下载量,或者当文件是应用安装文件时,客户端从下载文件后安装应用的激活量。在至少一个页面设置有文件的下载链接时,服务器中可以对应所述至少一个页面设置有至少一个计数,每个计数用于记录页面的下载量或激活量,如此可以便于后续的数据分析。
请参阅图10,本申请实施方式还提供一种服务器120。服务器120包括:请求接收模块30、写入模块40和文件发送模块50。
请求接收模块30用于接收客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码。
在本实施方式中,通信请求可以是客户端依照网络协议向服务器发出的信息,用于表示客户端请求访问服务器中的一部分数据。具体的,举例为:在基于HTTP协议进行通信时,客户端可以向服务器发出“request”请求,在该请求中可以附带有一些客户端所要访问的数据的信息,比如具体的文件名称、版本名称等。
在本实施方式中,第一标识码可以仅标识一个文件,也可以标识若干文件。在标识一个文件时,第一标识码可以是客户端要访问的文件的文件名,或者可以是客户端要访问的文件在服务器中的存储地址,或者可以服务器按照其存储规则分配给文件的文件编号,通过该文件编号可以找到所述文件。在标识若干文件时,第一标识码可以是一个字符串,在该若干文件的文件名中,都包括该字符串。
第二标识码可以是能够标识所述预设页面的字符串。具体的,举例为:网站中的页面都会有预设的名称,第二标识码可以是预设页面的名称,也可以是单独设置一个字符串用于标识预设页面。还可以根据不同的预设页面而使第二标识码包括不同的参数值。比如,一个网页的名称可以是“main”,在“main”页面设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“main”。另一个网页的名称可以是“chief”,在“chief”页面也设置有下载“AliexpressHD”的链接,在该链接被触发之后,客户端向服务器120发出通信请求,请求下载“AliexpressHD”,在通信请求中可以附带有文件名称“AliexpressHD”和“789”,其中“789”用于标识页面“chief”。
写入模块40用于将所述通信请求附带的第二标识码写入所述文件。
在本实施方式中,服务器120接收通信请求之后,获取通信请求中附带的第一标识码,依据第一标识码查找对应的文件。对应于前述描述的情况,在第一标识码仅标识一个文件时,若第一标识码是文件的文件名,服务器120在其存储的文件中查找文件名与第一标识码相同的文件;若第一标识码是文件在服务器120中的存储地址,客户端依据第一标识码至相应的地址获取文件;若第一标识码是文件在服务器120中的文件编码,服务器120依照该文件编码查找相应的文件。在第一标识码标识若干个文件时,服务器120可以在其存储的文件中查找文件名中具有第一标识码的文件。具体的,举例为:第一标识码是“AliexpressHD”,其包括在一个或若干个文件的文件名中,服务器120在本地存储的文件中查找名称包括“AliexpressHD”的文件。
在本实施方式中,服务器120获取文件之后,将第二标识码写入文件中,如此可以标识文件对应的页面。在一些情况下,在很多页面都可以设置有下载文件的链接,为了便于后续统计每个页面的下载量或软件下载后的激活量,将第二标识码写入文件中,由于第二标识码能够标识触发下载文件的连接所在的页面,使得文件被下载之后,便于统计下载量或者软件的激活量。
在本实施方式中,服务器120获取文件之后,将第二标识码写入文件中,如此可以标识文件对应的页面。在一些情况下,在很多页面都可以设置有下载文件的链接,为了便于后续统计每个页面的下载量或软件下载后的激活量,将第二标识码写入文件中,由于第二标识码能够标识触发下载文件的连接所在的页面,使得文件被下载之后,便于统计下载量或者软件的激活量。
在本实施方式中,对应前述描述的情况,文件的数量是一个时,第二标识码可以写入文件的属性项、文件内容或文件名中。对应于不同类型的文件,第二标识码写入的位置可以不相同。具体的,举例为:文件为图片文件,比如扩展名为“.jpg”,可以将第二标识码写入文件的属性项中;文件为文字文件,比如扩展名为“.txt”,可以将第二标识码写入文件的文字内容的某一个位置,如文字内容的末尾、文字内容最开始的部分或者文字内容的中间部分;文件为软件安装程序,比如扩展名为“.exe”或“.apk”等,可以将第二标识码写入文件的文件名中,比如将第二标识码写入文件名的末尾,并通过任意的符号将第二标识码与原有的文件名分隔。当然,文件的格式以及第二标识码写入文件的位置不限于上述描述,在此不再进行更多的举例,本领域技术人员在本发明技术精髓的启示下,还可能做出其它变更,但只要其实现的功能和效果与本发明相同或相似,均应涵盖于本申请保护范围内。当文件的数量是若干个时,可以将每个文件均写入第二标识码,或者在若干个文件中选择一个写入第二标识码,写入的方式见上文描述。
文件发送模块50用于将所述至少一个文件发送至所述客户端。
在本实施方式中,服务器120可以依照网络协议将文件发送至客户端。具体的,举例为:服务器120可以基于HTTP协议或FTP协议,将文件发送至客户端。相应的,在服务器120发出的文件中具有第二标识码,通过第二标识码能够明确标识触发本次下载的页面,使得在文件被客户端下载之后,可以进一步统计预设页面带来的下载量或激活量。再者,不同的客户端在预定页面下载了文件时,无需针对不同的客户端对文件进行额外的处理,使得本申请提供的方法具有较好的通用性。
由以上本申请实施方式提供的技术方案可见,本申请通过在通信请求中附带第一标识码和第二标识码,并通过第一标识码标识文件,第二标识码标识产生通信请求的页面,第一服务器通过第一标识码找到文件后,将第二标识码写入文件中,进而在第一服务器将文件发送至客户端之后,客户端可以将第二标识码提供给第二服务器,第二服务器后续便可以进行相应的计数。本申请可以使服务器端无需针对不用页面设置不同版本的文件,很大程度上减少了文件的版本数量,节省了存储资源。
虽然通过实施方式描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。

Claims (20)

1.一种客户端与服务器的交互方法,其特征在于,其包括:
所述客户端访问预设页面,所述预设页面提供有预设地址,所述预设地址指向至少一个文件;
所述客户端发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;
第一服务器接收所述通信请求;
所述第一服务器将所述第二标识码写入所述第一标识码对应的至少一个文件;
所述第一服务器将所述至少一个文件发送至所述客户端;
所述客户端接收所述至少一个文件;
所述客户端从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
2.如权利要求1所述的方法,其特征在于,在将第二标识码写入文件的步骤中包括:
所述第一服务器确定与所述第一标识码对应的至少一个文件;
所述第一服务器获取最新版本的所述至少一个文件;
所述第一服务器将所述第二标识码写入最新版本的所述至少一个文件。
3.如权利要求1所述的方法,其特征在于:所述第一标识码包括文件名或第一服务器对文件分配的文件编号。
4.如权利要求1所述的方法,其特征在于,在所述通信请求中还附带有版本信息;
相应地,所述将第二标识码写入所述文件的步骤包括:所述第一服务器根据所述第一标识码和所述版本信息获取对应的至少一个文件将所述第二标识码写入所述至少一个文件。
5.如权利要求1所述的方法,其特征在于,所述将第二标识码写入所述文件的步骤包括:所述第一服务器将所述第二标识码写入所述至少一个文件的文件名中。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述第二服务器接收所述第二标识码;
所述第二服务器确定所述第二标识码对应的页面,增加所述页面对应的计数。
7.如权利要求1所述的方法,其特征在于:所述第二标识码根据不同的所述预设页面包括不同的参数值。
8.如权利要求1或7所述的方法,其特征在于:所述第一服务器和所述第二服务器是同一个服务器。
9.一种客户端与服务器的交互系统,其中所述服务器包括第一服务器和第二服务器,其特征在于,
所述第一服务器包括:
请求接收模块,用于接收所述客户端发出的通信请求;
写入模块,用于将所述通信请求附带的第二标识码写入所述通信请求附带的第一标识码对应的至少一个文件;
文件发送模块,用于将所述至少一个文件发送至所述客户端;
所述客户端包括:
访问模块,用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;
请求发送模块,用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;
文件接收模块,用于接收所述第一标识码对应的所述至少一个文件;
标识码发送模块,用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至所述第二服务器。
10.一种客户端与服务器的交互方法,其特征在于,包括:
访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;
发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面的第二标识码;
接收所述第一标识码对应的至少一个文件;
从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至第二服务器。
11.如权利要求10所述的方法,其特征在于:所述通信请求中还附带有版本信息。
12.如权利要求10所述的方法,其特征在于:所述第二标识码根据不同的所述预设页面包括不同的参数值。
13.一种客户端,其特征在于,包括:
访问模块,用于访问预设页面,所述页面提供有预设地址,所述预设地址指向至少一个文件;
请求发送模块,用于发出访问所述预设地址的通信请求,所述通信请求附带有标识所述至少一个文件的第一标识码和标识所述预设页面第二标识码;
文件接收模块,用于接收所述第一标识码对应的至少一个文件;
标识码发送模块,用于从所述至少一个文件中读取所述第二标识码,将所述第二标识码发送至服务器。
14.一种客户端与服务器的交互方法,其特征在于,包括:
接收所述客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码;
将所述第二标识码写入所述第一标识码对应的至少一个文件;将所述至少一个文件发送至所述客户端。
15.如权利要求14所述的方法,其特征在于,将第二标识码写入文件的步骤包括:
确定与所述第一标识码对应的至少一个文件;
获取最新版本的所述至少一个文件;
将所述第二标识码写入最新版本的所述至少一个文件。
16.如权利要求14所述的方法,其特征在于,所述第一标识码包括文件名或第一服务器对文件分配的文件编号。
17.如权利要求14所述的方法,其特征在于,在所述通信请求中还附带有版本信息;
相应地,将第二标识码写入文件的步骤包括:根据所述第一标识码和所述版本信息获取对应的至少一个文件,将所述第二标识码写入所述至少一个文件。
18.如权利要求14所述的方法,其特征在于,将第二标识码写入文件的步骤包括:将所述第二标识码写入所述至少一个文件的文件名中。
19.如权利要求14所述的方法,其特征在于,所述方法还包括:
接收所述客户端发出的第二标识码;
确定所述第二标识码对应的页面,增加所述页面对应的计数。
20.一种服务器,其特征在于,包括:
请求接收模块,用于接收客户端发出的通信请求,所述通信请求附带有标识至少一个文件的第一标识码和标识预设页面的第二标识码;
写入模块,用于将所述第二标识码写入所述第一标识码对应的所述至少一个文件;
文件发送模块,用于将所述至少一个文件发送至所述客户端。
CN201410320030.0A 2014-07-07 2014-07-07 客户端与服务器的交互方法和系统及客户端和服务器 Active CN105338021B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410320030.0A CN105338021B (zh) 2014-07-07 2014-07-07 客户端与服务器的交互方法和系统及客户端和服务器
HK16106732.2A HK1218812A1 (zh) 2014-07-07 2016-06-13 客戶端與服務器的交互方法和系統及客戶端和服務器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410320030.0A CN105338021B (zh) 2014-07-07 2014-07-07 客户端与服务器的交互方法和系统及客户端和服务器

Publications (2)

Publication Number Publication Date
CN105338021A CN105338021A (zh) 2016-02-17
CN105338021B true CN105338021B (zh) 2018-09-11

Family

ID=55288299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410320030.0A Active CN105338021B (zh) 2014-07-07 2014-07-07 客户端与服务器的交互方法和系统及客户端和服务器

Country Status (2)

Country Link
CN (1) CN105338021B (zh)
HK (1) HK1218812A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326394A (zh) * 2016-08-18 2017-01-11 乐视控股(北京)有限公司 一种文件名获取方法及装置
CN109547280A (zh) * 2018-09-17 2019-03-29 微梦创科网络科技(中国)有限公司 一种数据激活的监测方法、系统以及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196909A (zh) * 2007-12-04 2008-06-11 深圳市迅雷网络技术有限公司 一种确定网络发布信息的方法和装置
CN103257973A (zh) * 2012-02-20 2013-08-21 腾讯科技(深圳)有限公司 浏览器缓存更新方法和系统
CN103379145A (zh) * 2012-04-19 2013-10-30 腾讯科技(深圳)有限公司 信息处理的方法、设备和系统
EP2592597A4 (en) * 2011-06-17 2014-05-07 Rakuten Inc INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, AND RECORDING MEDIUM ON WHICH INFORMATION PROCESSING PROGRAM IS RECORDED

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101196909A (zh) * 2007-12-04 2008-06-11 深圳市迅雷网络技术有限公司 一种确定网络发布信息的方法和装置
EP2592597A4 (en) * 2011-06-17 2014-05-07 Rakuten Inc INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, AND RECORDING MEDIUM ON WHICH INFORMATION PROCESSING PROGRAM IS RECORDED
CN103257973A (zh) * 2012-02-20 2013-08-21 腾讯科技(深圳)有限公司 浏览器缓存更新方法和系统
CN103379145A (zh) * 2012-04-19 2013-10-30 腾讯科技(深圳)有限公司 信息处理的方法、设备和系统

Also Published As

Publication number Publication date
CN105338021A (zh) 2016-02-17
HK1218812A1 (zh) 2017-03-10

Similar Documents

Publication Publication Date Title
US11563674B2 (en) Content based routing method and apparatus
CN102572014B (zh) 消息处理方法、装置和系统
US10015226B2 (en) Methods for making AJAX web applications bookmarkable and crawlable and devices thereof
CN102819554B (zh) 一种收藏夹数据的处理方法、装置和服务器
CN107181779B (zh) 访问请求的处理方法、装置和系统
CN101702173A (zh) 一种提高移动门户网站动态页面访问速度的方法和装置
CN101102313B (zh) 自动更换代理服务器的网络下载系统及方法
CN102446222A (zh) 一种网页内容预加载方法、装置及系统
CN101957842B (zh) 一种基于WebKit浏览器的网页缓存控制方法、装置及系统
CN108055168B (zh) 一种http协议调试系统、装置和方法
CN103944944A (zh) 分享网页链接的方法、电子设备及系统
CN102833350A (zh) WebApp更新的处理方法和处理装置
CN103577599A (zh) 一种移动终端的本地数据存储方法及装置
JP5004857B2 (ja) アプリケーション更新情報提供システム、及びアプリケーション更新情報提供方法
CN110286922A (zh) 应用下载更新方法、装置、计算机设备以及存储介质
KR101172885B1 (ko) 디바이스 식별자를 이용한 디바이스 프로파일 제공 시스템 및 방법
CN103634393A (zh) Ivr及其实现方法
EP3506599B1 (en) Method for synchronizing contact information, apparatus and medium
CN103927252A (zh) 一种跨组件日志记录方法、装置及系统
CN111803917A (zh) 资源的处理方法和装置
KR100438698B1 (ko) 자바어플리케이션간의 커뮤니케이션을 이용한자바어플리케이션 미들렛의 실행방법
CN109656592B (zh) 卡片管理方法、装置、终端及计算机可读存储介质
CN105338021B (zh) 客户端与服务器的交互方法和系统及客户端和服务器
CN104915404A (zh) 访问失效网址的方法和装置
CN103944942A (zh) 一种多web环境的数据访问方法和装置

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
TR01 Transfer of patent right

Effective date of registration: 20240206

Address after: # 01-21, Lai Zan Da Building 1, 51 Belarusian Road, Singapore

Patentee after: Alibaba Singapore Holdings Ltd.

Country or region after: Singapore

Address before: Greater Cayman, British Cayman Islands

Patentee before: ALIBABA GROUP HOLDING Ltd.

Country or region before: Cayman Islands