一种适配外部协议的方法及装置与流程

文档序号:11206410阅读:296来源:国知局
一种适配外部协议的方法及装置与流程

本发明涉及互联网技术领域,特别涉及一种适配外部协议的方法及装置。



背景技术:

目前,企业在对外提供数据服务时,例如,广告投放、内容投放等场景,需要按照渠道方的数据协议要求来提供相应服务。

一般地,企业会基于同一份数据内容,针对每个渠道方协议进行适配,向外提供多种协议服务。但是,数据和渠道方协议高度耦合,在进行编译执行时,无法脱离容器及环境,且无法热更新,进而导致开发、维护成本较高;且无法灵活适配外部协议,同时在协议变更时可能影响其他数据准确性。



技术实现要素:

本发明的目的是提供一种适配外部协议的方法及装置,目的在于解决现有数据和渠道方协议高度耦合导致开发维护成本较高、无法灵活适配的问题。

为解决上述技术问题,本发明提供一种适配外部协议的方法,该方法包括:

获取多个渠道信息及标准数据;

查找与多个所述渠道信息相对应的预存储的渠道模板协议文件;

将多个所述渠道模板协议文件和所述标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。

可选地,所述查找与多个所述渠道信息相对应的预存储的渠道模板协议文件包括:

利用各个所述渠道的唯一标识信息,查找各个所述渠道的渠道配置文件;

根据所述渠道配置文件内预定义的渠道与渠道模板协议文件的对应关系,读取各个所述渠道的所述渠道模板协议文件。

可选地,所述模板引擎为jsp、velocity及freemarker的任意一种或任意组合。

可选地,所述数据协议为html、xml、json及自定义协议中的任意一种或任意组合。

可选地,在所述将多个所述渠道模板协议文件和所述标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议之后还包括:

当需要协议变更时,根据变更渠道信息,查找所述渠道模板协议文件,进行渠道变更操作。

此外,本发明还提供了一种适配外部协议的装置,该装置包括:

获取模块,用于获取多个渠道信息及标准数据;

查找模块,用于查找与多个所述渠道信息相对应的预存储的渠道模板协议文件;

渲染生成模块,用于将多个所述渠道模板协议文件和所述标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。

可选地,所述查找模块包括:

配置文件查找单元,用于利用各个所述渠道的唯一标识信息,查找各个所述渠道的渠道配置文件;

读取单元,用于根据所述渠道配置文件内预定义的渠道与渠道模板协议文件的对应关系,读取各个所述渠道的所述渠道模板协议文件。

可选地,所述模板引擎为jsp、velocity及freemarker的任意一种或任意组合。

可选地,所述数据协议为html、xml、json及自定义协议中的任意一种或任意组合。

可选地,还包括:

协议变更模块,用于当需要协议变更时,根据变更渠道信息,查找所述渠道模板协议文件,进行渠道变更操作。

本发明所提供的一种适配外部协议的方法及装置,通过获取多个渠道信息及标准数据;查找与多个渠道信息相对应的预存储的渠道模板协议文件;将多个渠道模板协议文件和标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。本申请预先将各个协议编制成模板文件,以将数据内容和渠道协议进行分离,降低数据和协议的耦合度,这样可以脱离容器和环境进行解释执行,降低开发维护成本;且通过模板文件方式,可以灵活适配多个渠道方协议。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的适配外部协议方法的一种具体实施方式的流程示意图;

图2为本发明实施例提供的适配外部协议装置的结构示意框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明实施例提供的适配外部协议方法的一种具体实施方式的流程示意图,该方法包括以下步骤:

步骤101:获取多个渠道信息及标准数据。

可以理解,上述渠道信息可以具体包括渠道来源及预先为各个渠道分配的唯一标识信息等;上述标准数据可以是指企业根据业务需求生成的数据,例如,当业务需求为查询时,则可以根据查询服务的具体需求,生成相应的查询数据的标准数据。

可以同时获取多个渠道信息,例如,获取渠道1和渠道2的相关信息;且这多个渠道可以为同一类型的渠道,也可以是不同类型的渠道,在此不作限定。当然,只获取一个渠道信息的情况也落在本实施例的保护范围。

步骤102:查找与多个所述渠道信息相对应的预存储的渠道模板协议文件。

上述渠道模板协议文件可以是预先为各个渠道设置的一一对应的模板文件,即为各个不同的渠道确定其所使用的数据协议,并为预先编制生成模板协议文件,并进行持久化存储。

根据所获取的各个渠道的相关信息,该相关信息具体可以包括渠道唯一标识信息,故可以通过该唯一标识信息,寻找到各个渠道对应的渠道模板协议文件。

在本发明的一些实施例中,上述查找与多个所述渠道信息相对应的预存储的渠道模板协议文件的过程可以具体为:利用各个所述渠道的唯一标识信息,查找各个所述渠道的渠道配置文件;根据所述渠道配置文件内预定义的渠道与渠道模板协议文件的对应关系,读取各个所述渠道的所述渠道模板协议文件。

上述渠道配置文件可以是指包含各个渠道和所用的模板协议文件的对应关系的一个文件,在这个文件内包含各个渠道与模板协议文件的对应关系,该对应关系可以表征某个渠道所需的数据协议,例如,当前渠道1,在渠道配置文件中预先配置有渠道1所对应的数据协议,即可以通过渠道配置文件确定出渠道1对应的数据协议。

而采用模板文件形式,则可以通过渠道的唯一标识信息,例如,为各个渠道预分配的唯一id,从渠道配置文件中确定各个渠道所对应的渠道模板协议文件,继而可以读取到相应的渠道模板协议文件。更具体地,可以将各个渠道模板协议文件的文件名直接命名为接入渠道名称。

步骤103:将多个所述渠道模板协议文件和所述标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。

查找到各个渠道的渠道模板协议文件之后,可以通过模板引擎对标准数据进行数据渲染,以灵活适配外部协议,生成各个渠道要求的数据协议。

上述模板引擎可以具体为jsp、velocity及freemarker的任意一种或任意组合,该模板引擎可以根据所需渲染的协议的不同而进行具体选取,在此不作限定。

上述数据协议可以具体为html、xml、json及自定义协议中的任意一种或任意组合,该数据协议可以由所需接入的渠道方进行规定,在此不作限定。

当需要变更协议时,可以通过采用模板文件方式,以快速响应变更及热更新。故在本发明的一些实施例中,在上述将多个所述渠道模板协议文件和所述标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议之后还可以包括:当需要协议变更时,根据变更渠道信息,查找所述渠道模板协议文件,进行渠道变更操作。

上述协议变更可以具体为协议新增或减少。当新增协议时,可以基于模板文件和标准数据,通过模板引擎进行渲染,以生成所需的协议;当减少协议时,也可以快速响应协议减少操作。

可以看出,协议变更时可以快速响应变更操作,同时不会影响其他数据的准确性。

本实施例所提供的适配外部协议的方法,通过获取多个渠道信息及标准数据;查找与多个渠道信息相对应的预存储的渠道模板协议文件;将多个渠道模板协议文件和标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。该方法预先将各个协议编制成模板文件,以将数据内容和渠道协议进行分离,降低数据和协议的耦合度,这样可以脱离容器和环境进行解释执行,降低开发维护成本;且通过模板文件方式,可以灵活适配多个渠道方协议。

下面对本发明实施例提供的一种适配外部协议装置进行介绍,下文描述的一种适配外部协议装置与上文描述的一种适配外部协议方法可相互对应参照。

请参考图2,图2为本发明实施例提供的适配外部协议装置的结构示意框图,该装置包括:

获取模块21,用于获取多个渠道信息及标准数据;

查找模块22,用于查找与多个渠道信息相对应的预存储的渠道模板协议文件;

渲染生成模块23,用于将多个渠道模板协议文件和标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。

在本发明的一些实施例中,上述查找模块可以包括:

配置文件查找单元,用于利用各个渠道的唯一标识信息,查找各个渠道的渠道配置文件;

读取单元,用于根据渠道配置文件内预定义的渠道与渠道模板协议文件的对应关系,读取各个渠道的渠道模板协议文件。

可选地,模板引擎为jsp、velocity及freemarker的任意一种或任意组合。

可选地,数据协议为html、xml、json及自定义协议中的任意一种或任意组合。

在本发明的一些实施例中,上述装置还可以包括:

协议变更模块,用于当需要协议变更时,根据变更渠道信息,查找渠道模板协议文件,进行渠道变更操作。

本实施例所提供的适配外部协议的装置,通过获取多个渠道信息及标准数据;查找与多个渠道信息相对应的预存储的渠道模板协议文件;将多个渠道模板协议文件和标准数据通过模板引擎进行渲染,生成多个渠道各自所需的数据协议。通过预先将各个协议编制成模板文件,以将数据内容和渠道协议进行分离,降低数据和协议的耦合度,这样可以脱离容器和环境进行解释执行,降低开发维护成本;且通过模板文件方式,可以灵活适配多个渠道方协议。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的适配外部协议的方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1