具体实施方式
为了便于理解本申请实施例的所述方法及系统,首先通过图1对本申请实施例数据传输方法及系统的应用环境举例说明,如图1所示,包括:
客户端110,为用户提供浏览器,进行网站的访问;客户端110一般通过互联网与网站服务器120连接,网站服务器用于支持用户对于网站的访问,并响应用户的各种操作;
所述网站服务器120通过网关130与各个申请处理服务器140连接,进行数据交互。
以下,结合附图详细说明本申请实施例数据传输方法及系统的实现。
图2为本申请实施例一种数据的传输方法流程示意图,如图2所示,该方法包括:
步骤201:网站服务器接收用户的第一数据申请信息,获取用户对应的第二数据,根据所述第一数据申请信息以及第二数据生成第一数据格式的数据文档,将所述数据文档发送给网关;
步骤202:网关提取数据文档中携带的申请处理服务器信息以及第二数据的数据类型,将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式;
其中,将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式包括:从预设的申请处理服务器信息与数据文档的第二数据格式的对应关系中,根据数据文档中携带的申请处理服务器信息查找到申请处理服务器信息对应的所述第二数据格式;
按照查找到的数据文档的第二数据格式,将第一数据格式的数据文档中的字段信息添加到第二数据格式的数据文档的对应字段中,并将添加后的数据以第二数据格式对应的存储形式进行存储,得到第二数据格式的数据文档;
步骤203:网关使用所述第二数据的数据类型对应的传输方式将第二数据格式的数据文档传输给申请处理服务器信息指示的申请处理服务器。
在图2所示的数据的传输方法中,网站服务器接收用户的第一数据申请信息后,进行第二数据的获取,并生成数据文档发送给网关,由网关对数据文档进行格式转换,得到申请处理服务器所需数据格式的数据文档,进而传输给相应的申请处理的服务器,在整个的数据传输过程中,用户所在的客户端与网站服务器之间只需进行一次第一数据申请信息的传输即可,后续的处理都由网站服务器以及网关进行,特别是通过与申请处理服务器连接的网关完成,从而节省了客户端与网站服务器之间的数据传输带宽,提高了两者之间的数据传输速度和效率,提高了网站服务器的响应速度;而且,网站服务器在接收到用户的第一数据申请信息后,只需要获取到用户的第二数据,生成相应的数据文档发送给网关,由网关进行后续的第二数据以及第一数据申请信息等数据的处理,以及向对应申请处理服务器的数据传输,因此,相对于现有技术,网站服务器不需要向客户端进行第二数据的传输,也不需要指示客户端进行业务处理页面的重定向,因此,网站服务器的数据处理量相对减少,从而也相对的提高了响应速度和效率。
在图2的基础上,通过图3对本申请实施例数据传输方法进行更为详细的说明。如图3所示,该方法包括:
步骤301:网站服务器接收用户通过自身所在的客户端发来的第一数据申请信息。
所述第一数据是申请处理服务器进行用户申请的处理时,处理所需的基础数据,例如,可以包括用户信息、用户所申请的业务的业务数据信息等等。
例如,在背景技术中所述的金融融资申请中,所述第一数据申请信息中可以包括:现有技术中用户向网站服务器提供的金融融资请求信息以及向金融机构所提供的各种申请信息,例如,具体可以包括:申请额度、贷款用途、贷款期限、企业名称、组织机构代码、经营范围、注册时间、注册资本、实际经营所在地、法人信息等。
步骤302:网站服务器根据所述第一数据申请信息中携带的用户信息,获取该用户对应的第二数据,根据用户的第一数据申请信息以及第二数据生成第一数据格式的数据文档发送给网关。
所述第二数据是申请处理服务器进行用户申请的处理时,为申请处理服务器提供判断依据的数据,例如可以为用户的信用数据,例如在网商的金融融资申请中,所述信用数据可以包括:网商用户的互联网视频调查报告、互联网融资征信记录、行为数据、第三方认证数据等。
所述申请处理服务器是指对用户的第一数据申请信息进行申请处理的机构所使用的服务器,例如当网商用户在线向金融机构如银行进行资金贷款时,所述申请处理服务器即为:金融机构服务器如银行的服务器。
所述互联网视频调查报告一般是指:网站的相关人员通过电话和/或视频的方式,对用户进行贷前资信调查所得到的调查报告等。
互联网融资征信记录一般包括:客户通过互联网融资平台所申请的贷款征信记录,例如,y年m月d日用户申请A银行B贷款,申请金额C万,最终获贷D万,当前这笔贷款的状态为正常等等。
行为数据一般用于描述用户在平台上的行为记录,例如可以包括如下表1所示的信息:
表1
会员年限 |
1年 |
网站注册年限 |
2年 |
目前有效供应产品的数量 |
7个 |
最近半年收到反馈次数 |
8次 |
累计广告消费金额 |
1万元 |
最近半年广告消费金额 |
5000元 |
最近6月被他人投诉次数 |
1次 |
最近6月被多少人投诉 |
1次 |
所述第三方认证数据一般是指第三方的认证公司对于用户的注册企业认证的结果。所述第三方认证数据例如如下表2所示:
表2
认证时间:yyyy-mm-dd |
公司名称:某某公司 |
注册资本:人民币多少万元 |
企业类型:股份制企业 |
主营业务:某某业务 |
成立时间:yyyy-mmm-dd |
注册地址:某某省某某市某某县某某街道 |
工商注册号: |
法定代表人:*** |
身份证号码:************** |
公司所属行业:某某行业 |
在实际应用中,可以预先在网站服务器中设定数据文档的第一数据格式,所述数据格式可以包括:数据文档包含的字段、字段的顺序以及数据文档的存储形式;从而,当获取到所述第二数据后,根据用户的第一数据申请信息以及第二数据生成第一数据格式的数据文档发送给网关可以包括:
按照所述数据文档的第一数据格式,将所述申请信息以及第二数据对应填充到第一数据格式的数据文档的各个字段中,并将填充后的数据以对应的存储形式进行存储,得到第一数据格式的数据文档。
步骤303:网关接收所述第一数据格式的数据文档,提取数据文档中携带的申请处理服务器的信息以及第二数据的数据类型,将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式。
其中,本步骤中的所述将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式可以包括:
预设各个申请处理服务器信息对应的、数据文档的第二数据格式;
根据数据文档中携带的申请处理服务器信息查找到申请处理服务器信息对应的所述第二数据格式;
按照查找到的数据文档的第二数据格式,将第一数据格式的数据文档中的字段信息添加到第二数据格式的数据文档的对应字段中,并将添加后的数据以第二数据格式对应的存储形式进行存储,得到第二数据格式的数据文档。
在实际应用中,一般不同的申请处理服务器,其所需要的数据文档的数据格式都各不相同,比如包含的字段或者字段的排列顺序或者数据的存储形式等。例如,当本申请实施例应用于背景技术中指示的环境下,不同的金融机构在进行用户金融融资申请的审核判断时,所需要的数据会存在一定程度的不同,另外,不同的金融机构的服务器,其对于字段的排列顺序等也可能存在不同,因此,本申请实施例中,为了减少网站服务器的数据处理量,当前述步骤中网站服务器接收到用户的第一数据申请信息时,并不直接按照用户所申请金融机构的不同,直接生成不同数据格式的数据文档,而是直接预设数据文档的一种数据格式(即所述第一数据格式),将生成的数据文档发送给新设置的网关,而由网关来进行数据格式的转换(即转换成不同申请处理服务器信息对应的第二数据格式),以符合不同申请处理服务器对于数据文档数据格式的不同需求,从而将网站服务器的一部分处理转移到网关上,降低了网站服务器的处理负荷。
所述第一数据格式中包括第一存储形式;则提取数据文档中携带的申请处理服务器的信息以及第二数据的数据类型之前进一步包括:
使用第一存储形式对应的解释方法进行所述第一数据格式数据文档的解释,得到第一数据格式的数据文档中的字段和字段信息。
举例来说,当所述第二数据为用户的信用数据时,
第一数据格式的数据文档可以包括:申请额度、公司名、法人姓名、法人联系电话、工商注册号、网上订单数、金融机构信息以及信用数据类型等字段,以及上述字段对应的字段内容,而数据文档的存储形式为java对象序列化的存储形式。
第二数据格式的数据文档所包含的字段是第一数据格式的数据文档所包含字段的子集,例如第二数据格式的数据文档可以包括:申请额度、公司名、法人姓名、法人联系电话等字段,以及上述字段对应的字段内容,而数据文档的存储形式为xml格式。
因此,本步骤中提取数据文档中携带的申请处理服务器信息以及第二数据的数据类型之前进一步包括:使用所述java对象序列化的存储形式所对应版本的java虚拟机(jvm)进行所述第一数据格式数据文档的解释,得到第一数据格式的数据文档中的字段和字段信息;
相应的,从解释得到的第一数据格式的数据文档中的字段和字段信息中提取所述申请处理服务器信息以及第二数据的数据类型。
所述将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式可以包括:
预设各个申请处理服务器信息对应的、数据文档的第二数据格式;
根据所述申请处理服务器信息查找到申请处理服务器信息对应的所述第二数据格式;
按照查找到的数据文档的第二数据格式,将第一数据格式的数据文档中的字段信息添加到第二数据格式的数据文档的对应字段中,并将添加后的数据以xml格式进行存储,得到第二数据格式的数据文档。
步骤304:确定提取到的第二数据的数据类型对应的数据传输方式,使用所述第二数据的数据类型所对应的传输方式将第二数据格式的数据文档传输给申请处理服务器信息对应的申请处理服务器。
其中,第二数据的数据类型可以在实际应用中具体设定,例如,可以根据数据的即时性将第二数据划分为以下两种类型:即时性数据和非即时性数据,当然,在实际应用中还可以进一步根据实际情况进行更为详细的划分,或者,也可以不进行第二数据的数据类型的划分,这时可以认为第二数据只有一种类型,是本步骤中的一种特例情况。
所述即时性数据一般是指数据变化快,并且各方对其变化阶段较为关注的数据,例如资金相关数据,具体如:支用记录、还款记录等。
所述非即时性数据一般是指数据变化慢,并且业务上可以容忍一段时间内不知道其最新状态的数据,例如:贷款审批结果,贷款合同数据等。
在实际应用中,可以为每一种第二数据的数据类型对应设置一种数据传输方式,确定第二数据的类型后,即可以查询到该第二数据的数据类型对应的数据传输方式,也即对应的数据文档的数据传输方式。
以下,以将第二数据划分为即时性数据和非即时性数据两种类型为例,在实际应用中,即时性数据由于时间的要求,可以采用“推”的传输方式,即由网关主动向申请处理服务器发送数据文档;非即时性数据不存在传输的时间要求,因此,可以由网关按照申请处理服务器的不同,而分别保存,由申请处理服务器主动进行数据文档的请求,网关把申请处理服务器请求的数据文档发送给申请处理服务器。
具体的,当本步骤中判断第二数据的类型为即时性数据时,使用所述第二数据的数据类型对应的传输方式将第二数据格式的数据文档传输给申请处理服务器包括:
使用预设的第一私钥对第二数据格式的数据文档进行加密,将加密后的数据文档发送给申请处理服务器。
当本步骤中判断第二数据的类型为非即时性数据时,所述使用所述第二数据的数据类型对应的传输方式将第二数据格式的数据文档传输给申请处理服务器包括:
将该用户第二数据格式的数据文档存储到所述申请处理服务器信息对应的数据文档集合中;
接收第一申请处理服务器发来的通过预设的第二私钥加密后的文档请求消息,根据接收到的所述文档请求消息进行安全验证,通过时,将文档请求消息中所请求的数据文档使用预设的第三密钥加密后,传输给第一申请处理服务器。
其中,所述文档请求消息中一般可以包括:时间戳,数据文档的存储时间、申请处理服务器标识等。
其中,所述根据接收到的所述文档请求消息进行安全验证包括:
使用第二私钥对应的公钥对接收到的文档请求消息进行解密;
判断解密后的数据中携带的时间戳与本地的当前时间之间的时间差是否小于预设时间差阈值,和/或,判断解密后的数据中携带的申请处理服务器标识是否有效,如果判断结果均为是,则安全验证通过,否则,安全验证不通过。
所述将文档请求消息中所请求的数据文档使用预设的第三密钥加密后,传输给第一申请处理服务器可以包括:
查询解密后的数据中携带的时间段信息,从所述申请处理服务器信息对应的数据文档集合中查找得到存储时间处于所述时间段信息中的数据文档;
将查找到的数据文档使用第三密钥加密后,发送给第一申请处理服务器。
其中,所述判断解密后的数据中携带的申请处理服务器标识是否有效可以为:判断网关中是否存在该申请处理服务器标识对应的数据文档集合;或者,判断网关预先存储的有效申请处理服务器标识中是否存在所述携带的申请处理服务器标识等等。
与上述的数据的传输方法相对应的,本申请实施例还提供一种数据的传输系统,如图4所示,该系统包括:
网站服务器410,用于接收用户的第一数据申请信息,获取用户对应的第二数据,根据所述第一数据申请信息以及第二数据生成第一数据格式的数据文档,将所述数据文档发送给网关420;
网关420,用于提取数据文档中携带的申请处理服务器信息以及第二数据的数据类型,将数据文档从第一数据格式转换为所述申请处理服务器信息对应的第二数据格式;使用所述第二数据的数据类型对应的传输方式将第二数据格式的数据文档传输给申请处理服务器信息对应的申请处理服务器。
优选地,如图5所示,所述网站服务器410可以包括:
接收单元510,用于接收用户的第一数据申请信息;
获取单元520,用于获取用户对应的第二数据;
生成单元530,用于根据所述第一数据申请信息以及第二数据生成第一数据格式的数据文档,将所述数据文档发送给网关。
优选地,如图6所示,所述网关420可以包括:
提取单元610,用于提取数据文档中携带的申请处理服务器信息以及第二数据的数据类型;
查找单元620,用于从预设的申请处理服务器信息与第二数据格式的对应关系中,根据数据文档中携带的申请处理服务器信息查找到申请处理服务器信息对应的所述第二数据格式;
转换单元630,用于按照查找到的数据文档的第二数据格式,将第一数据格式的数据文档中的字段信息添加到第二数据格式的数据文档的对应字段中,并将添加后的数据以第二数据格式对应的存储形式进行存储,得到第二数据格式的数据文档;
传输单元640,用于使用所述第二数据的数据类型对应的传输方式将第二数据格式的数据文档传输给申请处理服务器信息对应的申请处理服务器。
优选地,所述第一数据格式中包括第一存储形式;该系统中的网关还包括:
解释单元,用于使用所述第一存储形式对应的解释方法进行所述第一数据格式数据文档的解释,得到第一数据格式的数据文档中的字段和字段信息,将得到的所述字段和字段信息发送到提取单元。
例如所述第一数据格式中的存储方式为java对象序列化的存储形式;则解释单元具体用于:使用所述java对象序列化的存储形式所对应版本的java虚拟机进行所述第一数据格式数据文档的解释,得到第一数据格式的数据文档中的字段和字段信息,将得到的字段和字段信息发送到提取单元。
优选地,所述第二数据的数据类型为即时性数据时,所述传输单元640具体可以用于:使用预设的第一私钥对第二数据格式的数据文档进行加密,将加密后的数据文档发送给申请处理服务器。
或者,所述第二数据的数据类型为非即时性数据时,所述传输单元640具体可以包括:
存储子单元,用于将该用户第二数据格式的数据文档存储到所述申请处理服务器信息对应的数据文档集合中;
接收子单元,用于接收第一申请处理服务器发来的通过预设的第二私钥加密后的文档请求消息;
安全验证子单元,用于根据接收到的所述文档请求消息进行安全验证;
传输子单元,用于验证子单元的安全验证通过时,将文档请求消息中所请求的数据文档使用预设的第三密钥加密后,传输给第一申请处理服务器。
所述安全验证子单元可以包括:
解密模块,用于使用第二私钥对应的公钥对接收到的文档请求消息进行解密;
判断模块,用于判断解密后的数据中携带的时间戳与本地的当前时间之间的时间差是否小于预设时间差阈值,和/或,判断解密后的数据中携带的申请处理服务器标识是否有效,如果判断结果均为是,则安全验证通过,否则,安全验证不通过。
优选地,传输子单元可以包括:
查找模块,用于查询解密后的数据中携带的时间段信息,从所述申请处理服务器信息对应的数据文档集合中查找得到存储时间处于所述时间段信息中的数据文档;
发送模块,用于将查找到的数据文档使用第三密钥加密后,发送给第一申请处理服务器。
图4~6所述的数据的传输系统中,网站服务器接收用户的第一数据申请信息后,进行第二数据的获取,并生成数据文档发送给网关,由网关对数据文档进行格式转换,得到申请处理服务器所需数据格式的数据文档,进而传输给相应的申请处理服务器,在整个的数据传输过程中,用户所在的客户端与网站服务器之间只需进行一次第一数据申请信息的传输即可,后续的处理都由网站服务器以及网关进行,特别是通过与申请处理服务器连接的网关完成,从而节省了客户端与网站服务器之间的数据传输带宽,提高了两者之间的数据传输速度和效率,提高了网站服务器的响应速度;
而且,网站服务器在接收到用户的第一数据申请信息后,只需要获取到用户的第二数据,生成相应的数据文档发送给网关,由网关进行后续的第二数据以及第一数据申请信息等数据的处理,以及向对应申请处理服务器的数据传输,因此,相对于现有技术,网站服务器不需要向客户端进行第二数据的传输,也不需要指示客户端进行业务处理页面的重定向,因此,网站服务器的数据处理量相对减少,从而也相对的提高了响应速度和效率。
本领域普通技术人员可以理解,实现上述实施例的方法的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如:ROM/RAM、磁碟、光盘等。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。