[发明专利]一种代码检测方法和装置在审
| 申请号: | 202110104217.7 | 申请日: | 2021-01-26 |
| 公开(公告)号: | CN113760729A | 公开(公告)日: | 2021-12-07 |
| 发明(设计)人: | 柯俊盛;夏先刚 | 申请(专利权)人: | 北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F16/36;G06F16/31;G06F16/33 |
| 代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 王安娜;王志远 |
| 地址: | 100176 北京市北京经济技术*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 代码 检测 方法 装置 | ||
1.一种代码检测方法,其特征在于,包括:
接收代码检测请求,根据所述检测请求,获取目标代码文件和目标检测规则,其中,所述目标代码文件包括一个或多个待检测代码文件;
根据所述待检测代码文件对应的文件类型,加载所述待检测代码文件对应的代码解析器,生成所述待检测代码文件对应的抽象语法树;
根据所述待检测代码文件对应的抽象语法树,执行所述目标检测规则,获得所述待检测代码文件对应的检测结果,以得到所述目标代码文件对应的检测结果。
2.根据权利要求1所述的方法,其特征在于,所述根据待检测代码文件对应的文件类型,加载所述待检测代码文件对应的代码解析器,生成所述待检测代码文件对应的抽象语法树,包括:
获取所述待检测代码文件对应的文件类型;
判断获取的文件类型是否为JavaScript、CSS、WXSS、HTML或WXML;
若是,则加载所述获取的文件类型对应的代码解析器,生成所述待检测代码文件对应的抽象语法树;
若否,则确定不支持所述待检测代码文件的解析。
3.根据权利要求2所述的方法,其特征在于,所述加载所述获取的文件类型对应的代码解析器,生成所述待检测代码文件对应的抽象语法树,包括:
若所述获取的文件类型为JavaScript,则利用JavaScript对应的解析器对所述待检测代码文件进行解析,生成所述待检测代码文件对应的抽象语法树;
若所述获取的文件类型为CSS或WXSS,则利用CSS或WXSS对应的解析器对所述待检测代码文件进行解析,生成所述待检测代码文件对应的抽象语法树;
若所述获取的文件类型为HTML或WXML,则利用HTML或WXML对应的解析器对所述待检测代码文件进行解析,生成所述待检测代码文件对应的抽象语法树。
4.根据权利要求1所述的方法,其特征在于,所述根据所述待检测代码文件对应的抽象语法树,执行所述目标检测规则,获得所述待检测代码文件对应的检测结果,包括:
加载所述目标检测规则中的基础检测规则;
根据所述待检测代码文件对应的抽象语法树,利用所述基础检测规则对所述待检测代码文件进行代码检测,获得所述基础检测规则对应的检测结果;
判断所述目标检测规则中是否包括自定义检测规则;
若是,则加载所述自定义检测规则,然后根据所述待检测代码文件对应的抽象语法树,利用所述自定义检测规则对所述待检测代码文件进行代码检测,获得所述自定义检测规则对应的检测结果;其中,
所述检测结果包括:错误提示信息、错误级别和代码文件位置。
5.根据权利要求4所述的方法,其特征在于,所述根据所述待检测代码文件对应的抽象语法树,利用所述基础检测规则对所述待检测代码文件进行代码检测,包括:
判断所述基础检测规则对应的检测文件类型与所述待检测代码文件对应的文件类型是否匹配;
若是,则根据所述待检测代码文件对应的抽象语法树,利用所述基础检测规则对所述待检测代码文件进行代码检测;
若否,则确定不需要利用所述基础检测规则对所述待检测代码文件进行代码检测。
6.根据权利要求4所述的方法,其特征在于,所述根据所述待检测代码文件对应的抽象语法树,利用所述自定义检测规则对所述待检测代码文件进行代码检测,包括:
判断所述自定义检测规则对应的检测文件类型与所述待检测代码文件对应的文件类型是否匹配;
若是,则根据所述待检测代码文件对应的抽象语法树,利用所述自定义检测规则对所述待检测代码文件进行代码检测;
若否,则确定不需要利用所述自定义检测规则对所述待检测代码文件进行代码检测。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司,未经北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110104217.7/1.html,转载请声明来源钻瓜专利网。





