一种上传文件的方法、装置和系统与流程

文档序号:26939650发布日期:2021-10-12 14:59阅读:来源:国知局

技术特征:
1.一种上传文件的方法,其特征在于,包括:与服务端建立长连接;基于websocket的文件传输协议对待上传文件进行拼装;通过所述长连接将拼装得到的文件对象发送给所述服务端,以使所述服务端对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。2.根据权利要求1所述的方法,其特征在于,基于websocket的文件传输协议对待上传文件进行拼装包括:生成文件传输协议的协议头;获取待上传文件的扩展名,并将所述扩展名转换为一个字节的数据作为文件类型;将所述待上传文件的数据流转换为数据缓冲区对象以作为文件传输协议的协议数据体;根据所述协议头、所述文件类型和所述协议数据体创建文件存储对象以对所述待上传文件进行拼装。3.根据权利要求2所述的方法,其特征在于,所述协议头包括四个字节魔数。4.根据权利要求2所述的方法,其特征在于,所述服务端对所述文件对象进行协议解析包括:所述服务端根据所述文件对象的前四个字节解析得到协议头;所述服务端根据所述文件对象的第五个字节解析得到文件类型;所述服务端根据所述文件对象的第五个字节之后的数据部分解析得到待上传文件的数据流。5.一种上传文件的方法,其特征在于,包括:与客户端建立长连接;接收所述客户端通过所述长连接上传的文件对象,所述文件对象由所述客户端基于websocket的文件传输协议对待上传文件进行拼装得到;对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。6.根据权利要求5所述的方法,其特征在于,所述客户端基于websocket的文件传输协议对待上传文件进行拼装包括:所述客户端生成文件传输协议的协议头;所述客户端获取待上传文件的扩展名,并将所述扩展名转换为一个字节的数据作为文件类型;所述客户端将所述待上传文件的数据流转换为数据缓冲区对象以作为文件传输协议的协议数据体;所述客户端根据所述协议头、所述文件类型和所述协议数据体创建文件存储对象以对所述待上传文件进行拼装。7.根据权利要求6所述的方法,其特征在于,对所述文件对象进行协议解析包括:根据所述文件对象的前四个字节解析得到协议头;根据所述文件对象的第五个字节解析得到文件类型;根据所述文件对象的第五个字节之后的数据部分解析得到待上传文件的数据流。8.根据权利要求7所述的方法,其特征在于,保存所述待上传文件之前,还包括:
将所述待上传文件的数据流转换为图像缓冲区对象。9.一种上传文件的方法,其特征在于,包括:客户端与服务端建立长连接;所述客户端基于websocket的文件传输协议对待上传文件进行拼装,并通过所述长连接将拼装得到的文件对象发送给所述服务端;所述服务端接收所述客户端发来的文件对象,对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。10.一种上传文件的装置,其特征在于,包括:第一连接模块,用于与服务端建立长连接;文件拼装模块,用于基于websocket的文件传输协议对待上传文件进行拼装;文件发送模块,用于通过所述长连接将拼装得到的文件对象发送给所述服务端,以使所述服务端对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。11.一种上传文件的装置,其特征在于,包括:第二连接模块,用于与客户端建立长连接;文件接收模块,用于接收所述客户端通过所述长连接上传的文件对象,所述文件对象由所述客户端基于websocket的文件传输协议对待上传文件进行拼装得到;文件解析模块,用于对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。12.一种上传文件的系统,其特征在于,包括连接建立模块,客户端和服务端,其中:所述连接建立模块,用于使客户端与服务端建立长连接;所述客户端,用于基于websocket的文件传输协议对待上传文件进行拼装,并通过所述长连接将拼装得到的文件对象发送给所述服务端;所述服务端,用于接收所述客户端发来的文件对象,对所述文件对象进行协议解析得到所述待上传文件,并保存所述待上传文件。13.一种上传文件的电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4和/或5-8和/或9中任一所述的方法。14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4和/或5-8和/或9中任一所述的方法。

技术总结
本发明公开了一种上传文件的方法、装置和系统,涉及计算机技术领域。该方法的一具体实施方式包括:与服务端建立长连接;基于web socket的文件传输协议对待上传文件进行拼装;通过长连接将拼装得到的文件对象发送给服务端,以使服务端对文件对象进行协议解析得到待上传文件,并保存待上传文件。该实施方式能够基于自定义的web socket文件传输协议进行文件上传,实现简单,支持跨域文件上传且可以实时显示上传进度,提高用户体验,且可以在多场景多终端使用。景多终端使用。景多终端使用。


技术研发人员:李世豪 王仲甫
受保护的技术使用者:北京京东世纪贸易有限公司
技术研发日:2020.04.07
技术公布日:2021/10/11
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1