一种上传文件到服务器的方法技术

技术编号:8633583 阅读:189 留言:0更新日期:2013-04-27 17:50
本发明专利技术提供一种上传文件到服务器的方法。与现有技术相比,本发明专利技术通过克服上述实际应用中存在的问题,使得文件在上传到服务器的过程中,利用通用form表单multipart/form-data编码方式,自定义确认文件开始打包上传的位置。所述方法为使用http协议form表单提交文件类型的数据提供完整的解决方案,使文件在不良的网络环境下传输时,即使传输到一半传输任务失败,已经上传的文件部分也不会丢失,在下次继续传输的时候可以接着传输余下的文件部分,提高了用户的体验度。

【技术实现步骤摘要】

本专利技术涉及通讯
,更具体地说,涉及。
技术介绍
随着互联网的日益发展,文件传输一直是网络传输的一项重要应用。与ftp协议相比,http协议在文件传输技术上在应用上比前者更加方便、灵活。在现有技术中,利用http协议进行断点续传下载的文件传输技术已被广泛使用,该项技术解决了客户端从服务器端下载文件时,由于网络中断所引起的下载的文件需要重新下载的困扰,随着服务器业务的发展,诸如网络硬盘、个人主页、博客等的相继出现,需要客户端大量的快速的上传文件到服务器端。因此,如何有效的上传文件是提高用户的网络体验的一项重要指标。
技术实现思路
本专利技术提供来解决上述问题。本专利技术所述的,其特征在于,所述方法包括如下步骤 1)用户在客户端启动需要上传的文件,向服务器发送所述上传文件的请求命令; 2)所述客户端通过http协议发送请求数据; 3)所述客户端访问所述服务器的php程序,所述php程序将所述上传文件的大小发送给所述客户端; 4)所述客户端根据返回的 所述上传文件的大小,获得本次上传的起始位置,从所述上传的起始位置起开始将所述上传文件打包并将其发送到所述服务器,所述发送过程附带所述上传文件的信息; 5)所述服务器接受所述上传文件及所述附带的上传文件信息,所述服务器定位并打开所述上传文件,所述服务器将读写位置移动到所述上传文件续传的位置,并在该位置保存所述接受的上传文件; 6)在上传过程完成后,所述客户端通知所述服务器,所述服务器检测所述上传文件的完整性之后进彳了保存。优选的是,在步骤I)中,所述请求命令包含所述上传文件的信息,所述上传文件的信息包括文件名称、文件大小、上传的文件目录和用户名称。优选的是,所述上传文件为视频文件时,所述上传文件的信息还包括所述视频文件的md5值的文本信息。优选的是,在步骤2)中,所述客户端通过web服务80端口访问所述服务器。优选的是,在步骤2)中,所述客户端通过get或post方法发送所述请求数据。优选的是,在步骤3)中,所述php程序查询所述上传文件的上传记录,如果没有所述上传文件的上传记录,所述php程序创建所述上传文件的上传记录,如果具有所述上传文件的上传记录,所述Php程序查询所述记录中的所述上传文件的大小。优选的是,以xml文件的形式表示所述上传文件的大小。优选的是,在步骤4)中,所述上传文件的信息包括文件名称、文件大小、上传的文件目录和用户名称。 优选的是,在步骤4)中,如果所述上传文件为视频文件,所述上传文件的信息还包括所述视频文件的md5值的文本信息。优选的是,在步骤4)中,所述客户端通过post方法发送所述请求数据。优选的是,在步骤5)中,如果网络中断或所述服务器故障中断,所述上传文件需要再次上传时,所述客户端会重新启动所述步骤2)的所述上传过程,重新获得所述上传文件的上传开始位置并发送文件。优选的是,在步骤6)中,如果所述上传文件为视频文件,所述服务器检测所述视频文件的md5值以确认所述视频文件的完整性。与现有技术相比,本专利技术通过克服上述实际应用中存在的问题,使得文件在上传到服务器的过程中,利用通用form表单multipart/form-data编码方式,自定义确认文件开始打包上传的位置。所述方法为使用http协议form表单提交文件类型的数据提供完整的解决方案,使文件在不良的网络环境下传输时,即使传输到一半传输任务失败,已经上传的文件部分也不会丢失,在下次继续传输的时候可以接着传输余下的文件部分,提高了用户的体验度。附图说明为了使本专利技术便于理解,现在结合附图描述本专利技术的具体实施例。图1示出了本专利技术的上传文件到服务器的方法的一优选实施例的步骤示意图。具体实施例方式下面结合附图和优选的实施方式对本专利技术作进一步详细描述。权利要求中构成要件和实施例中具体实例之间的对应关系可以如下例证。这里的描述意图在于确认在实施例中描述了用来支持在权利要求中陈述的主题的具体实例,由于在实施例中描述了实例,不意味着该具体实例不表示构成要件。相反地,即使在此包含了具体实例作为对应一个构成要件的要素特征,也不意味着该具体实例不表示任何其它构成要件。此外,这里的描述不意味着对应于实施例中陈述的具体实例的所有主题都在权利要求中引用了。换句话说,这里的描述不否认这种实体,即对应实施例包含的具体实例,但不包含在其任何一项权利要求中,即,能够在以后的修正被分案并申请、或增加的可能专利技术的实体。应当注意的是,“系统”在此意味着由两个或更多设备构成的处理。显而易见地,用户终端可以由个人计算机构成。此外,所述用户终端还可以由例如蜂窝电话、任何其它PDA (个人数字助理)工具、AV (音频视频)装置、诸如家用电气(家庭用电气化)设备的CE (消费电子设备)等构成。“网络”意味着至少连接了两个设备的机构,并且在其中,一条信息能够从一个设备发送到另一个设备。经由网络建立通信的设备可以是彼此分离的,也可以是构成一个机器的内部模块。“通信”可表示无线通信和有线通信。然而,还可以是混合无线和有线通信的通信,更具体地,在某个区段采取无线通信而在另一个区段采取有线通信的通信。同样,它也可以是这样的通信从一个设备向另一设备的通信是有线的,且相反方向的通信是无线的。图1示出了本专利技术的上传文件到服务器的方法的一优选实施例的步骤示意图。本专利技术的一优选实施例包含如下步骤 第一,用户在客户端启动需要上传的文件,向服务器发送上传文件的请求命令。其中,所述请求命令包含所述上传文件的信息,所述上传文件的信息包括但不限于文件名称、文件大小、上传的文件目录和用户名称,如果上传文件为视频文件,还包括所述视频文件的md5值的文本信息。第二,所述客户端通过http协议发送请求数据,通过web服务指定端口访问所述服务器,例如,采用get或post方法发送所述请求数据,通过web服务80端口访问服务器。第三,所述客户端访问所述服务器的php程序。所述php程序查询所述上传的文件的上传记录。如果没有所述上传文件的上传记录,所述Php程序创建所述上传文件的上传记录;如果具有所述上传文件的上传记录,则查询该记录中的所述上传文件的大小,并且所述Php程序将所述上传文件的大小发送给所述客户端。其中,可以以xml文件的形式表示所述上传文件的大小。第四,所述客户端根据返回的所述上传文件的大小,获得本次上传的起始位置,从所述上传的起始位置起开始将所述上传文件打包并将其发送到所述服务器,所述发送过程附带所述上传文件的信息,同样地,所述上传文件的信息包括但不限于文件名称、文件大小、上传的文件目录和用户名称,如果所述上传文件为视频文件,还包括所述视频文件的md5值的文本信息。可以通过post方法发送所述请求数据。第五,所述服务器接受所述上传的文件及所述附带的上传文件信息,所述服务器定位并打开所述上传的文件,所述服务器将读写位置移动到所述上传文件续传的位置,并在该位置保存所述接受的上传文件。其中,在上传过程中,如果网络中断或所述服务器故障中断,所述上传文件需要再次上传时,所述客户端会重新启动步骤二的上传过程,并重新获得所述上传文件的上传开始位置发送文件,以确保所述上传文件的准确性。第六,在上传过程完成后,所述客户端会通知所述服务器,所述服务器检测所本文档来自技高网...

【技术保护点】
一种上传文件到服务器的方法,其特征在于,所述方法包括如下步骤:用户在客户端启动需要上传的文件,向服务器发送所述上传文件的请求命令;所述客户端通过http协议发送请求数据;所述客户端访问所述服务器的php程序,所述php程序将所述上传文件的大小发送给所述客户端;所述客户端根据返回的所述上传文件的大小,获得本次上传的起始位置,从所述上传的起始位置起开始将所述上传文件打包并将其发送到所述服务器,所述发送过程附带所述上传文件的信息;所述服务器接受所述上传文件及所述附带的上传文件信息,所述服务器定位并打开所述上传文件,所述服务器将读写位置移动到所述上传文件续传的位置,并在该位置保存所述接受的上传文件;在上传过程完成后,所述客户端通知所述服务器,所述服务器检测所述上传文件的完整性之后进行保存。

【技术特征摘要】
1.一种上传文件到服务器的方法,其特征在于,所述方法包括如下步骤 用户在客户端启动需要上传的文件,向服务器发送所述上传文件的请求命令; 所述客户端通过http协议发送请求数据; 所述客户端访问所述服务器的Php程序,所述php程序将所述上传文件的大小发送给所述客户端; 所述客户端根据返回的所述上传文件的大小,获得本次上传的起始位置,从所述上传的起始位置起开始将所述上传文件打包并将其发送到所述服务器,所述发送过程附带所述上传文件的信息; 所述服务器接受所述上传文件及所述附带的上传文件信息,所述服务器定位并打开所述上传文件,所述服务器将读写位置移动到所述上传文件续传的位置,并在该位置保存所述接受的上传文件; 在上传过程完成后,所述客户端通知所述服务器,所述服务器检测所述上传文件的完整性之后进行保存。2.如权利要求1所述的上传文件到服务器的方法,其特征在于,在步骤I)中,所述请求命令包含所述上传文件的信息,所述上传文件的信息包括文件名称、文件大小、上传的文件目录和用户名称。3.如权利要求2所述的上传文件到服务器的方法,其特征在于,所述上传文件为视频文件时,所述上传文件的信息还包括所述视频文件的md5值的文本信息。4.如权利要求1所述的上传文件到服务器的方法...

【专利技术属性】
技术研发人员:李茗张树坤
申请(专利权)人:乐视网信息技术北京股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1