CN108512898A - 文件推送方法、装置、计算机设备和存储介质 - Google Patents
文件推送方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN108512898A CN108512898A CN201810131475.2A CN201810131475A CN108512898A CN 108512898 A CN108512898 A CN 108512898A CN 201810131475 A CN201810131475 A CN 201810131475A CN 108512898 A CN108512898 A CN 108512898A
- Authority
- CN
- China
- Prior art keywords
- file
- push
- message
- server
- information
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种文件推送方法、装置、计算机设备和存储介质,所述方法包括:服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。上述方法实时监控任务运行状态,灵活适配各种格式的文件,批量推送文件,大大降低文件传输成本,提高文件推送效率。
Description
技术领域
本发明涉及文件处理相关领域,尤其涉及文件推送方法、装置、计算机设备和存储介质。
背景技术
随着互联网科技行业的不断发展,金融科技业之间文件的推送数量也逐渐增加,对于文件的上传、下载、解析速度和解析质量的要求也越来越高。
各大金融机构基本上都独立拥有自己的文件处理系统,但都存在获取渠道单一、对文件格式要求死板等缺陷。而采用针对每一种文件类型设置对应的推送方式,则需要专门制定一套独立的代码逻辑来完成文件推送任务。若推送新类型的文件,则需要对代码做逻辑变更,使得代码的复用率低,致使文件推送速度低下。目前主流的文件推送方式有FTP(File Transfer Protocol)和HTTP(HyperText Transfer Protocol)。FTP传输方式存在实时性不足的问题,且缺乏可定制性,无法完成客户专门指定的推送任务。HTTP在传送某一信息给多个用户时需要进行多次重复传送,从而造成网络宽带和服务器资源的浪费,效率低下。
发明内容
有鉴于此,有必要针对传统文件推送方法对格式要求死板、获取渠道单一等弊端、代码的复用率低的问题,提供一种文件推送方法、装置、计算机设备和存储介质。
一种文件推送方法,包括: 服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。
在其中一个实施例中,所述服务器接收终端上传的推送文件还包括对文件的传输进度进行监控,具体步骤如下:检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
在其中一个实施例中,所述服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域还包括对推送文件进行解析,具体步骤如下:解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;解析文件体配置信息,获取文件要素对应的下标;根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
在其中一个实施例中,在云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端之后,还包括:所述服务器将回收消息发送给所述云存储,所述回收消息中包含回收内容和回收标识,以使所述云存储根据所述回收内容删除所述推送文件。
在其中一个实施例中,所述检查文件传输是否完毕时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置。
一种文件推送装置,包括:接收单元,用于服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;获取单元,用于所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;发送单元,用于所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。
在其中一个实施例中,所述接收单元还包括传输监控模块,用于检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
在其中一个实施例中,所述接收单元还包括:解析文件模块,用于解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;判断模块,用于判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;解析文件体模块,用于解析文件体配置信息,获取文件要素对应的下标;解析报文模块,用于根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;读取模块,用于读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述文件推送方法的步骤。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述文件推送方法的步骤。
上述文件推送方法、装置、计算机设备和存储介质,通过服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域,并检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束,当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕,并对推送文件进行解析,解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体,判断推送文件是否含有文件头,若是,则解析文件头配置信息,若否,则直接进入下一步,解析文件体配置信息,获取文件要素对应的下标,根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验,读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息。所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。本发明采用上述技术方案后,能实时监控任务运行状态,灵活适配各种格式的文件,批量推送文件,大大降低文件传输成本,提高文件推送效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
图1为本发明一个实施例中文件推送方法的流程图;
图2为本发明一个实施例中对推送文件进行解析的流程图;
图3为本发明一个实施例中文件推送装置的结构框图;
图4为本发明一个实施例中接收单元的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
如图1所示,在一个实施例中,提出了一种文件推送方法,该文件推送方法具体可以包括以下步骤:
步骤S101,服务器接收终端上传的推送文件,服务器将推送文件存储至服务器的存储路径指向的存储区域;
服务器则是本实施例中用于推送文件下发的执行实体,首先服务器接收终端上传的推送文件,服务器将推送文件存储至服务器的存储路径指向的存储区域,比如手机等用户终端需要向服务器申请存储网络文件,该网络文件用来存储用户终端上传的文件数据。
步骤S102,服务器获取推送消息,推送消息中包含推送内容和推送标识,推送内容为推送文件在服务器上的存储路径信息;
服务器获取发送的推送消息,该推送消息中包含推送内容和推送标识。该推送内容具体为推送文件在服务器上的存储路径信息,在另外一些实施例中推送内容也可以是推送文件本身,还可以是推送文件的地址信息等。推送标识可以是推送文件所推送到的目标用户的参数信息,该目标用户可以是一个用户,也可以是一组用户。
步骤S103,服务器将推送消息发送给云存储,以使云存储根据推送标识所指示的目标用户,将推送内容发送至目标用户的终端;
根据推送消息中携带的推送标识,即目标用户的参数信息,在服务器为该用户创建云存储并分配位置。在云存储创建完成后,服务器将推送内容发送至该目标用户的云存储中,具体为,可以将推送文件的存储路径信息发送至该云储存中,以使目标用户根据该存储路径信息在服务器上浏览和/或下载该推送文件。
在一个实施例中,服务器接收终端上传的推送文件还包括对文件的传输进度进行监控,具体步骤如下:检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
检查文件传输是否完毕通过JSch提供的SftpProgressMonitor接口来检查文件传输是否完毕。JSch是Java Secure Channel的缩写,JSch是一个SSH2的纯Java实现。它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然也可以集成它的功能到应用程序。JSch支持在文件传输时对传输进度的监控。可以实现JSch提供的SftpProgressMonitor接口来完成这个功能。
SftpProgressMonitor接口类的定义为:
SftpProgressMonitor.java
package com.jcraft.jsch;
public interface SftpProgressMonitor
{
public static final int PUT=0;
public static final int GET=1;
void init(int op, String src, String dest, long max);
boolean count(long count);
void end();
}
init():当文件开始传输时,调用init方法。
count():当每次传输了一个数据块后,调用count方法,count方法的参数为这一次传输的数据块大小。
end():当传输结束时,调用end方法。
在一个实施例中,如图2所示,服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域还包括对推送文件进行解析,具体步骤如下:
步骤S201,解析推送文件,获取推送文件的基本信息,基本信息包括编码格式、缓冲区大小值、文件头和文件体;
解析推送文件,获取推送文件的基本信息。文件编码格式也称为字符编码格式,用于指定在处理文本时如何表示字符。读取中文文件时,未正确匹配文件编码格式的情况可能会导致发生异常或产生不正确的结果。常见的汉字编码格式包括GB2312、BIG5、GBK、UTF-8等,对于简体汉字的编码格式,目前又以GB2312和UTF-8最为常用。根据获取的文件大小建立缓冲区,用于临时存储文件。文件一般是由文件头和文件体组成,有时候还含有文件尾。文件头里面可以定义文件的行数、交易金额等信息。文件体里面可以包含交易数据,比如客户的账号、交易的流水号、交易日期等具体交易信息。
步骤S202,判断推送文件是否含有文件头:
若是,则执行步骤S203,解析文件头配置信息;
若否,则直接进入下一步,执行步骤S204;
设置一个配置项,用于指示是否有文件头。比如0代表没有文件头,则会执行步骤S204,1代表有文件头,则会执行步骤S203。这些都是在具体实施中针对不同的情况进行的具体配置。根据下载的分块数据判断该分块数据中是否包含文件头信息;若是,则从该分块数据中解析出文件头信息的长度,获取完整的文件头信息;若否,则包含内容数据的数据包在文件头信息之前(这是因为不同的网站可能有不同的编码规则,文件中各个box的封装顺序也不尽相同),解析数据包的长度,根据数据包的长度计算文件头信息的开始位置,向该开始位置请求获取文件头信息。文件头配置信息中指明了交易记录总条数、交易总金额等信息。
步骤S204,解析文件体配置信息,获取文件要素对应的下标;
解析文件体配置信息,文件体配置信息指明了每个关键要素在文件中的第几列,获取文件要素对应的下标。文件头配置信息中指明了交易记录总条数,交易总金额等信息。如果检测到文件头中交易总条数与文件中实际总条数不符,则会中断解析,抛出错误,可以提高发现问题的效率。文件体配置信息指明了每个关键要素在文件中的第几列。这是灵活配置的关键所在。
步骤S205,根据下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验。
根据下标,读取具体报文,完成解析。比如A银行的渠道流水号字段在第一列,而B银行的渠道流水号字段在第5列。那在A银行的文件体配置信息中配置此字段值为0(因为数组下标从0开始,0即代表第一列数据),而在B银行的文件体配置信息中配4,即可正常解析。按照以往的做法,需要在具体实施的时候调整代码,才能实现解析。而现在可以通过配置不同的配置项,实现对不同银行文件的解析,大大提高实施效率。
步骤S206,读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
解析并确定目的地址,源地址,报文长度,报文校验等信息,即可实现完整的一条报文。报文的数据结构,以太网报文,包含了目的地址、源地址、类型、数据和CRC共5个报文结构域;PPP(点到点协议)报文,包含了标志字节、地址、控制、协议、信息、CRC和标志共7个报文结构域,其中,标志域为7E,指示一个帧的开始或结束;地址域为FF,是标准的广播地址,PPP不指定单个工作站的地址;控制域为03,表示无编号的消息;协议域:用于标识封装在帧的信息域中的协议类型;数据域:长度为零或多个字节,最多为1500字节,包含符合协议域中指定协议的数据报;帧检测序列:通常为2个字节;802.3Snap(子网接入协议)报文,包含了目的地址、源地址、长度、SNAP、数据和CRC共6个报文结构域。
在一个实施例中,在云存储根据推送标识所指示的目标用户,将推送内容发送至目标用户的终端之后,还包括:服务器将回收消息发送给云存储,回收消息中包含回收内容和回收标识,以使云存储根据回收内容删除推送文件。
该回收内容可以为根据推送文件的有效时间所需要回收的推送文件本身,也可以是推送文件的地址信息等,在本实施例中,该回收内容具体为推送文件在服务器上的存储路径信息。在另一些实施例,该回收标识可以是推送文件被推送到的目标用户的参数信息。接收到服务器发送的回收消息后,根据回收消息中的回收标识和回收内容,找出其对应的云存储和位置,然后将文件从服务器卸载,并将对应的云存储位置删除,以完成推送文件的回收。
在一个实施例中,检查文件传输是否完毕时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置。
当检查上传文件是否正在上传时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,即为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置,防止文件覆盖的现象发生。例如,解决文件完整性校验的方法,可以是利用MD5校验算法来计算每个独立文件的MD5值,MD5算法可以保证如果文件内容一样那么其MD5值也是一致的。MD5即Message-Digest Algorithm 5 (信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理。
如图3所示,在一个实施例中,提供了一种文件推送装置,该文件推送装置包括:
接收单元,用于服务器接收终端上传的推送文件,服务器将推送文件存储至服务器的存储路径指向的存储区域;
获取单元,用于服务器获取推送消息,推送消息中包含推送内容和推送标识,推送内容为推送文件在服务器上的存储路径信息;
发送单元,用于服务器将推送消息发送给云存储,以使云存储根据推送标识所指示的目标用户,将推送内容发送至目标用户的终端。
在一个实施例中,接收单元还包括传输监控模块,用于检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
在一个实施例中,如图4所示,接收单元还包括:
解析文件模块,用于解析推送文件,获取推送文件的基本信息,基本信息包括编码格式、缓冲区大小值、文件头和文件体;
判断模块,用于判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;
解析文件体模块,用于解析文件体配置信息,获取文件要素对应的下标;
解析报文模块,用于根据下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;
读取模块,用于读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行所述计算机可读指令时实现以下步骤:服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。
在一个实施例中,所述服务器接收终端上传的推送文件还包括对文件的传输进度进行监控,具体步骤如下:检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
在一个实施例中,所述服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域还包括对推送文件进行解析,具体步骤如下:解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;解析文件体配置信息,获取文件要素对应的下标;根据所述下标,读取报文解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
在一个实施例中,在云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端之后,还包括:所述服务器将回收消息发送给所述云存储,所述回收消息中包含回收内容和回收标识,以使所述云存储根据所述回收内容删除所述推送文件。
在一个实施例中,所述检查文件传输是否完毕时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端;所述目标用户根据推送内容中所述存储路径信息在所述服务器上下载所述推送文件。
在一个实施例中,所述服务器接收终端上传的推送文件还包括对文件的传输进度进行监控,具体步骤如下:检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
在一个实施例中,所述服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域还包括对推送文件进行解析,具体步骤如下:解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;解析文件体配置信息,获取文件要素对应的下标;根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
在一个实施例中,在云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端之后,还包括:所述服务器将回收消息发送给所述云存储,所述回收消息中包含回收内容和回收标识,以使所述云存储根据所述回收内容删除所述推送文件。
在一个实施例中,所述检查文件传输是否完毕时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器 (ROM ,Read Only Memory) 、随机存取存储器 (RAM ,RandomAccess Memory)、磁盘或光盘等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种文件推送方法,其特征在于,包括:
服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;
所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;
所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。
2.根据权利要求1所述的文件推送方法,其特征在于,所述服务器接收终端上传的推送文件还包括对文件的传输进度进行监控,包括:
检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
3.根据权利要求1所述的文件推送方法,其特征在于,所述服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域还包括对推送文件进行解析,包括:
解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;
判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;
解析文件体配置信息,获取文件要素对应的下标;
根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;
读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
4.根据权利要求1所述的文件推送方法,其特征在于,在云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端之后,还包括:所述服务器将回收消息发送给所述云存储,所述回收消息中包含回收内容和回收标识,以使所述云存储根据所述回收内容删除所述推送文件。
5.根据权利要求2所述的文件推送方法,其特征在于,所述检查文件传输是否完毕时,选择至少一种文件校验算法,判断该文件是否在上传临时目录中,为要上传的文件在临时文件夹建立一个根据该文件唯一特征而确定的文件名称可以直接定位到文件的存储位置。
6.一种文件推送装置,其特征在于,所述文件推送装置包括:
接收单元,用于服务器接收终端上传的推送文件,所述服务器将所述推送文件存储至所述服务器的存储路径指向的存储区域;
获取单元,用于所述服务器获取推送消息,所述推送消息中包含推送内容和推送标识,所述推送内容为推送文件在所述服务器上的存储路径信息;
发送单元,用于所述服务器将所述推送消息发送给云存储,以使所述云存储根据所述推送标识所指示的目标用户,将所述推送内容发送至所述目标用户的终端。
7.根据权利要求6所述的文件推送装置,其特征在于,所述接收单元还包括传输监控模块,用于检查文件传输是否完毕,当文件传输完毕时,更新任务状态后结束;当文件传输未完毕时,更新传输任务表中最新进度后继续检查文件传输是否完毕,直到文件传输完毕。
8.根据权利要求6所述的文件推送装置,其特征在于,所述接收单元还包括:
解析文件模块,用于解析推送文件,获取推送文件的基本信息,所述基本信息包括编码格式、缓冲区大小值、文件头和文件体;
判断模块,用于判断推送文件是否含有文件头,若是,则解析文件头配置信息;若否,则直接进入下一步;
解析文件体模块,用于解析文件体配置信息,获取文件要素对应的下标;
解析报文模块,用于根据所述下标,读取报文,解析所述报文的服务信息,所述服务信息包括目的地址、源地址、报文长度和报文校验;
读取模块,用于读取所述服务信息,确定对应的目的地址、源地址、报文长度和报文校验,完成所述报文中服务信息的解析。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至5中任一项所述的文件推送方法的步骤。
10.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至5中任一项所述的文件推送方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810131475.2A CN108512898B (zh) | 2018-02-09 | 2018-02-09 | 文件推送方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810131475.2A CN108512898B (zh) | 2018-02-09 | 2018-02-09 | 文件推送方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108512898A true CN108512898A (zh) | 2018-09-07 |
CN108512898B CN108512898B (zh) | 2021-02-26 |
Family
ID=63375065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810131475.2A Active CN108512898B (zh) | 2018-02-09 | 2018-02-09 | 文件推送方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108512898B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110035108A (zh) * | 2018-12-26 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种信息推送方法及系统 |
CN110351371A (zh) * | 2019-07-15 | 2019-10-18 | 星联云服科技有限公司 | 一种在云存储系统中进行数据推送的方法及系统 |
CN110515991A (zh) * | 2019-07-16 | 2019-11-29 | 上海数据交易中心有限公司 | 批量配送文件的收集方法及装置、存储介质、终端 |
CN111163155A (zh) * | 2019-12-26 | 2020-05-15 | 深圳乐信软件技术有限公司 | 对账文件传输方法、系统、服务器及存储介质 |
CN111245706A (zh) * | 2020-01-03 | 2020-06-05 | 湖南省梦网科技发展有限公司 | 一种信息处理方法、装置、服务器及介质 |
CN115134325A (zh) * | 2022-05-17 | 2022-09-30 | 上海维信荟智金融科技有限公司 | 一种用于信息推送的方法、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016019796A1 (zh) * | 2014-08-08 | 2016-02-11 | 阿里巴巴集团控股有限公司 | 实现信息推送的方法、服务器、共享者客户端、第三方客户端 |
CN105872025A (zh) * | 2016-02-08 | 2016-08-17 | 物联智慧科技(深圳)有限公司 | 推送消息传输方法及消息传输系统 |
CN107277181A (zh) * | 2017-08-14 | 2017-10-20 | 深圳市金立通信设备有限公司 | 一种消息推送方法、服务器及消息推送系统 |
-
2018
- 2018-02-09 CN CN201810131475.2A patent/CN108512898B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016019796A1 (zh) * | 2014-08-08 | 2016-02-11 | 阿里巴巴集团控股有限公司 | 实现信息推送的方法、服务器、共享者客户端、第三方客户端 |
CN105872025A (zh) * | 2016-02-08 | 2016-08-17 | 物联智慧科技(深圳)有限公司 | 推送消息传输方法及消息传输系统 |
CN107277181A (zh) * | 2017-08-14 | 2017-10-20 | 深圳市金立通信设备有限公司 | 一种消息推送方法、服务器及消息推送系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110035108A (zh) * | 2018-12-26 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种信息推送方法及系统 |
CN110351371A (zh) * | 2019-07-15 | 2019-10-18 | 星联云服科技有限公司 | 一种在云存储系统中进行数据推送的方法及系统 |
CN110515991A (zh) * | 2019-07-16 | 2019-11-29 | 上海数据交易中心有限公司 | 批量配送文件的收集方法及装置、存储介质、终端 |
CN111163155A (zh) * | 2019-12-26 | 2020-05-15 | 深圳乐信软件技术有限公司 | 对账文件传输方法、系统、服务器及存储介质 |
CN111245706A (zh) * | 2020-01-03 | 2020-06-05 | 湖南省梦网科技发展有限公司 | 一种信息处理方法、装置、服务器及介质 |
CN115134325A (zh) * | 2022-05-17 | 2022-09-30 | 上海维信荟智金融科技有限公司 | 一种用于信息推送的方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108512898B (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108512898A (zh) | 文件推送方法、装置、计算机设备和存储介质 | |
US8078880B2 (en) | Portable personal identity information | |
US20130185806A1 (en) | Personal-information transmission/reception system, personal-information transmission/reception method, personal-information provision apparatus, preference management apparatus and computer program | |
CN101123750B (zh) | 便于推送内容的后台处理的装置和相关方法 | |
WO2003073195A2 (en) | Method and system for effectively communicating file properties and directory structures in a distributed file system | |
CN106790206A (zh) | 业务系统的协议解析方法及装置 | |
CN103139761B (zh) | 一种信息实时展示的方法和移动通讯终端 | |
CN107135188A (zh) | 金融信息交换fix协议的业务实现方法、装置及系统 | |
CN103401850A (zh) | 一种报文过滤方法及装置 | |
WO2012048617A1 (zh) | Widget更新方法、系统、widget客户端及widget服务器 | |
KR101568947B1 (ko) | 폰트 파일을 다운로드하는 방법 및 시스템 | |
CN106790334A (zh) | 一种页面数据传输方法及系统 | |
JP2005327154A (ja) | Htmlファイル処理方法及びプログラム | |
KR101703468B1 (ko) | 메시지 맵을 활용한 포맷된 메시지 처리 | |
CN106681734A (zh) | 功能接口调用响应方法、装置 | |
CN115543479A (zh) | 一种适用于动态参数的接口调用解析方法及装置 | |
KR20220013372A (ko) | 문서 프로세싱을 위한 클라이언트 컴퓨팅의 사용 | |
US20110321043A1 (en) | System, Method and Program Product for Native Interface Optimization of Read-Only Arrays | |
US20110055279A1 (en) | Application server, object management method, and object management program | |
US10257262B2 (en) | Mobile itinerant software agent carrying itinerary and data within | |
US9936015B2 (en) | Method for building up a content management system | |
US20070098018A1 (en) | Above-transport layer message partial compression | |
CN108614714A (zh) | 一种动态库更新方法、装置及存储介质 | |
KR102176190B1 (ko) | 연결문서 생성 및 열람 방법, 장치, 및 이에 대한 컴퓨터프로그램 | |
US10187477B2 (en) | Restful interface system for an application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |