[发明专利]一种yaml文件解析方法、装置、设备及存储介质在审
申请号: | 202010946759.4 | 申请日: | 2020-09-10 |
公开(公告)号: | CN112069788A | 公开(公告)日: | 2020-12-11 |
发明(设计)人: | 徐静;范渊 | 申请(专利权)人: | 杭州安恒信息技术股份有限公司 |
主分类号: | G06F40/205 | 分类号: | G06F40/205;G06F40/284;G06F40/289;G06F40/253 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 薛娇 |
地址: | 310000 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 yaml 文件 解析 方法 装置 设备 存储 介质 | ||
本发明公开了一种yaml文件解析方法、装置、设备及存储介质,该方法包括:以纯文本的形式读取保存有前端设置的yaml文件,得到所述yaml文件中保存的所述前端设置的字符串;对所述字符串进行词法分析,得到与所述字符串中字符相对应的可识别词块,并对得到的所述可识别词块进行语法分析,得到由所述可识别词块组成的可识别语句;将所述可识别语句按照后端服务器能够解析的格式存储至相应的文件中,并将该文件发送至所述后端服务器。从而使得WAF升级过程中即使需要修改yaml语言的格式,也无需再修改后端服务器的解析代码,而是按照本申请的方式实现yaml文件的解析即可,从而更加灵活方便,且不会因硬编码导致产生相应的错误。
技术领域
本发明涉及WAF技术领域,更具体地说,涉及一种yaml文件解析方法、装置、设备及存储介质。
背景技术
WAF(Web应用防护系统)中,用yaml文件保存前端配置,yaml文件即为采用yaml格式实现存储的文件,而yaml格式是一个可读性高、用来表达数据序列化的格式;后端服务器解析yaml文件生成后端服务器所需要的数据。但是,当需要升级WAF时,需要修改yaml格式对应的数据结构,往往需要同时修改后端服务器的解析代码,以修改后端服务器的数据结构,也即通过硬编码的方式修改后端服务器中的解析代码,更改相关数据结构,这种方式不够灵活、不够方便,且很容易发生错误。
发明内容
本发明的目的是提供一种yaml文件解析方法、装置、设备及存储介质,能够更加灵活方便,且不会因硬编码导致产生相应的错误。
为了实现上述目的,本发明提供如下技术方案:
一种yaml文件解析方法,包括:
以纯文本的形式读取保存有前端设置的yaml文件,得到所述yaml文件中保存的所述前端设置的字符串;
对所述字符串进行词法分析,得到与所述字符串中字符相对应的可识别词块,并对得到的所述可识别词块进行语法分析,得到由所述可识别词块组成的可识别语句;
将所述可识别语句按照后端服务器能够解析的格式存储至相应的文件中,并将该文件发送至所述后端服务器。
优选的,对所述字符串进行词法分析,得到与所述字符串中字符相对应的可识别词块,包括:
依次确定所述字符串中每个字符分别为当前字符,确定在基于yaml语言的格式预先设置的词法文件中,与当前字符具有对应关系的词块为与当前字符对应的可识别词块。
优选的,对得到的所述可识别词块进行语法分析,得到由所述可识别词块组成的可识别语句,包括:
获取基于yaml语言的格式构造的语法树,并基于该语法树将所述可识别词块进行重组,得到相应的可识别语句。
优选的,还包括:
如果yaml语言的格式需要发生变化,则获取基于此次发生变化后的yaml语言的格式得到的词法文件及语法树,并利用获取的词法文件及语法树替换yaml语言的格式此次发生变化前的词法文件及语法树。
优选的,所述词法文件及所述语法树存储在可插拔的存储装置中。
一种yaml文件解析装置,包括:
读取模块,用于:以纯文本的形式读取保存有前端设置的yaml文件,得到所述yaml文件中保存的所述前端设置的字符串;
解析模块,用于:对所述字符串进行词法分析,得到与所述字符串中字符相对应的可识别词块,并对得到的所述可识别词块进行语法分析,得到由所述可识别词块组成的可识别语句;
发送模块,用于:将所述可识别语句按照后端服务器能够解析的格式存储至相应的文件中,并将该文件发送至所述后端服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州安恒信息技术股份有限公司,未经杭州安恒信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010946759.4/2.html,转载请声明来源钻瓜专利网。