报文解析方法及装置制造方法及图纸

技术编号:32477040 阅读:14 留言:0更新日期:2022-03-02 09:39
本发明专利技术公开了一种报文解析方法及装置,涉及移动互联技术领域。其中该方法包括:在接收到的HTTP报文为标准HTTP报文时根据HTTP报文中的预设位置是否包含预设报文类型标识确定HTTP报文的报文类型;在HTTP报文的报文类型为GET类型时对HTTP报文进行解析,得到第一报文头;在根据预设条件确定第一报文头中包含key=value格式的报文时根据预设字符对第一报文头进行解析,得到至少一个key=value格式的解析结果;预设条件中包含报文格式中应当存在的字符、不能存在的字符、预设变量的预设格式;将得到的key=value格式的解析结果分别存储为单个的key=value格式的数据。提高了报文解析效率。效率。效率。

【技术实现步骤摘要】
报文解析方法及装置


[0001]本专利技术涉及移动互联
,尤其涉及报文解析方法及装置。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]HTTP报文包含标准HTTP报文、非标准HTTP报文。目前,针对标准HTTP报文的解析,只能将报文解析为报文头header或者解析为报文头header和报文体body两部分,但是HTTP报文中经常会嵌套一些其他格式的报文(例如key=value、XML、JSON等格式的报文),标准HTTP报文分为两种,一种是GET类型的HTTP报文:只包含报文头,报文头中可能会嵌套key=value格式的报文;另一种是非GET类型的HTTP报文:包含报文头、报文体,其中报文头中包含HTTP报文中的正常报文数据,报文体中可能嵌套key=value或者XML或者JSON等格式化的报文。现有的针对HTTP报文的解析方案,无法对HTTP报文中包含的其它格式的报文进行更为详细的解析,需要人为的进行分析得到更详细的解析结果,工作量大,容易出错,HTTP报文解析效率低。

技术实现思路

[0004]本专利技术实施例提供一种报文解析方法,用以对HTTP报文中嵌套的其它格式的报文进行进一步的解析,提高HTTP报文的解析效率,该方法包括:
[0005]在接收到的HTTP报文为标准HTTP报文时,根据HTTP报文中的预设位置是否包含预设报文类型标识确定所述HTTP报文的报文类型;
>[0006]在所述HTTP报文的报文类型为GET类型时,对所述HTTP报文进行解析,得到第一报文头;
[0007]在根据预设条件确定第一报文头中包含key=value格式的报文时,根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果;其中,预设条件中包含报文格式中应当存在的字符、不能存在的字符、以及预设变量的预设格式;
[0008]将得到的key=value格式的解析结果分别存储为单个的key=value格式的数据。本专利技术实施例还提供一种报文解析装置,用以对HTTP报文中嵌套的其它格式的报文进行进一步的解析,提高HTTP报文的解析效率,该装置包括:
[0009]报文类型确定模块,用于在接收到的HTTP报文为标准HTTP报文时,根据HTTP报文中的预设位置是否包含预设报文类型标识确定所述HTTP报文的报文类型;
[0010]第一解析模块,用于在所述HTTP报文的报文类型为GET类型时,对所述HTTP报文进行解析,得到第一报文头;
[0011]第二解析模块,用于在根据预设条件确定第一报文头中包含key=value格式的报文时,根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果;其中,预设条件中包含报文格式中应当存在的字符、不能存在的字符、以及预设变量的
预设格式;
[0012]存储模块,用于将得到的key=value格式的解析结果分别存储为单个的key=value格式的数据。
[0013]本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述报文解析方法。
[0014]本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述报文解析方法。
[0015]本专利技术实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述报文解析方法。
[0016]本专利技术实施例中,在接收到的HTTP报文为标准HTTP报文时,根据HTTP报文中的预设位置是否包含预设报文类型标识确定所述HTTP报文的报文类型;在所述HTTP报文的报文类型为GET类型时,对所述HTTP报文进行解析,得到第一报文头;在根据预设条件确定第一报文头中包含key=value格式的报文时,根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果;其中,预设条件中包含报文格式中应当存在的字符、不能存在的字符、以及预设变量的预设格式;将得到的key=value格式的解析结果分别存储为单个的key=value格式的数据。这样,可以对HTTP报文中嵌套的其它格式的报文进行进一步的解析,提高HTTP报文的解析效率。
附图说明
[0017]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0018]图1为本专利技术实施例中提供的一种报文解析方法的流程图;
[0019]图2为本专利技术实施例中提供的一种根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果的方法流程图;
[0020]图3为本专利技术实施例中提供的一种非GET类型报文的解析方法的流程图;
[0021]图4为本专利技术实施例中提供的一种非标准HTTP报文的解析方法的流程图;
[0022]图5为本专利技术实施例中提供的一种报文解析装置的示意图。
具体实施方式
[0023]为使本专利技术实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例做进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。
[0024]本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
[0025]在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
[0026]经研究发现,HTTP报文包含标准HTTP报文、非标准HTTP报文。目前,针对标准HTTP报文的解析,只能将报文解析为报文头header或者解析为报文头header和报文体body两部分,但是HTTP报文中经常会嵌套一些其他格式的报文(例如key=value、XML、JSON等本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种报文解析方法,其特征在于,包括:在接收到的HTTP报文为标准HTTP报文时,根据HTTP报文中的预设位置是否包含预设报文类型标识确定所述HTTP报文的报文类型;在所述HTTP报文的报文类型为GET类型时,对所述HTTP报文进行解析,得到第一报文头;在根据预设条件确定第一报文头中包含key=value格式的报文时,根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果;其中,预设条件中包含报文格式中应当存在的字符、不能存在的字符、以及预设变量的预设格式;将得到的key=value格式的解析结果分别存储为单个的key=value格式的数据。2.如权利要求1所述的报文解析方法,其特征在于,根据预设字符对所述第一报文头进行解析,得到至少一个key=value格式的解析结果,包括:遍历所述第一报文头,查找第一报文头字符串中的预设字符,将所述第一报文头字符串从每一预设字符处进行切分,得到至少一个子字符串;提取每一子字符串中除所述预设字符外的内容,得到至少一个key=value格式的解析结果。3.如权利要求1所述的报文解析方法,其特征在于,还包括:在所述HTTP报文的报文类型为非GET类型时,对所述HTTP报文进行解析,得到第二报文头、报文体;根据报文体中嵌套的报文格式调用对应的解析函数对所述报文体进行解析,得到报文体中各变量对应的数值;其中,报文体中嵌套的报文格式包括:key=value格式,或者XML格式,或者JSON格式;将报文体中各变量、以及各变量对应的数值分别存储为单个的key=value格式的数据。4.如权利要求3所述报文解析方法,其特征在于,根据报文体中嵌套的报文格式调用对应的解析函数对所述报文体进行解析,得到报文体中各变量对应的数值,包括:在报文体中嵌套的报文格式为:key=value格式时,调用key=value格式对应的解析函数,将报文体中的每一行单独取出作为一个单独的key=value格式的解析结果,得到每行的变量对应的数值。5.如权利要求3所述的报文解析方法,其特征在于,根据报文体中嵌套的报文格式调用对应的解析函数对所述报文体进行解析,得到报文体中各变量对应的数值,包括:在报文体中嵌套的报文格式为:JSON格式时,根据JSON格式报文中的字符,在JavaCC中设置保留字符、以及解析规则,生成解析函数;调用解析函数对报文体字符串进行解析,得到报文体中各变量对应的数值。6.如权利要求1所述的报文解析方法,其特征在于,还包括:在接收到的HTTP报文为非标准HTTP报文时,根据预先约定的非标准HTTP报文生成规则,从HTTP报文字符串中的预设位置提取预设位数的子字符串,得到自定义数据、以及标准HTTP报文;根据预先约定的非标准HTTP报文解析规则,对所述自定义数据进行解析得到自定义数据中各变量对应的数值;其中,非标准HTTP报文解析规则是根据非标准HTTP报文生成规则
得到的;将自定义数据中的各变量、以及各变量对应的数值分别存储为单个的key=value格式的数据。7.一种报文解析装置,其特征在于,包括:报文类型确定模块,用于在接收到的HTTP报文为标准HTTP报文时,根据HTTP报文中的预设位置是否包含预设报文类型标识确定所述HTTP报文的报文...

【专利技术属性】
技术研发人员:王硕
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1