获取规则列表接口 - ListRules
功能介绍
该API用于查询规则列表。可根据语言、问题级别等条件筛选查询。
调用方法
请参见如何调用API。
授权信息
账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。
| 授权项 | 访问级别 | 资源类型(*为必须) | 条件键 | 别名 | 依赖的授权项 |
|---|---|---|---|---|---|
| codeartscheck::listRules | List | - | - | - | - |
URI
GET /v2/rules
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| rule_languages | 否 | String | 参数解释: 规则的语言。 约束限制: 需要传当前环境支持的语言。 取值范围: 只能传一种语言。当前支持的语言有: 默认取值: 不涉及。 |
| rule_severity | 否 | String | 参数解释: 缺陷等级。 约束限制: 不涉及。 取值范围: 默认取值: 0,1,2,3。默认全部查询 |
| offset | 否 | Integer | 参数解释: 分页索引,偏移量。 约束限制: 不涉及。 取值范围: 0-999 默认取值: 0 |
| limit | 否 | Integer | 参数解释: 分页查询,每页显示的数量。 约束限制: 不涉及。 取值范围: 0-200 默认取值: 100 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释: 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 不涉及。 取值范围: 长度为[1~100000]个字符。 默认取值: 不涉及。 |
| X-Language | 否 | String | 参数解释: 语言,决定响应以哪种语言返回。 约束限制: 不涉及。 取值范围: 默认取值: zh-cn。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| info | Array of RuleListItem objects | 参数解释: 规则信息。 取值范围: 不涉及。 |
| total | Integer | 参数解释: 总数。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| rule_set | String | 参数解释: 业务类型分类。 取值范围: |
| rule_id | String | 参数解释: 规则ID。 取值范围: 32位UUID。 |
| rule_language | String | 参数解释: 规则所属语言。 取值范围: 当前支持的语言有: |
| rule_name | String | 参数解释: 规则名称。 取值范围: 不涉及。 |
| rule_severity | String | 参数解释: 规则问题级别。 取值范围: |
| rule_tages | String | 参数解释: 规则标签。 取值范围: |
| right_example | String | 参数解释: 正确示例。 取值范围: 代码块或者文字示例等。 |
| error_example | String | 参数解释: 错误示例。 取值范围: 代码块或者文字示例等。 |
| revise_opinion | String | 参数解释: 修改建议。 取值范围: 代码块或者文字示例等。 |
| rule_desc | String | 参数解释: 规则描述。 取值范围: 不涉及。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
状态码:401
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
请求示例
GET https://{endpoint}/v2/rules 响应示例
状态码:200
Request succeeded!
{
"info" : [ {
"rule_id" : "2561",
"rule_language" : "Java",
"rule_name" : "\"=+\"不能用\"+=\"代替",
"rule_severity" : "1",
"rule_tages" : "bug",
"rule_desc" : "<p>使用恒等运算符(<code>===</code>)比较不同的类型,其结果总是 <code>false</code> 。</p>",
"right_example" : "<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a == b) {\n // ...\n}\n</pre>\n<p>or</p>\n<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a === Number(b)) {\n // ...\n}\n</pre>",
"error_example" : "<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a === b) { //不规范;比较结果总是false\n // ...\n}\n</pre>",
"revise_opinion" : "无",
"rule_set" : "common"
}, {
"rule_id" : "8048",
"rule_language" : "Java",
"rule_name" : "\"Arrays.stream\" should be used for primitive arrays",
"rule_severity" : "1",
"rule_tages" : "performance",
"rule_desc" : "<p>使用恒等运算符(<code>===</code>)比较不同的类型,其结果总是 <code>false</code> 。</p>",
"right_example" : "<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a == b) {\n // ...\n}\n</pre>\n<p>or</p>\n<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a === Number(b)) {\n // ...\n}\n</pre>",
"error_example" : "<pre>\nvar a = 8;\nvar b = \"8\";\n\nif (a === b) { //不规范;比较结果总是false\n // ...\n}\n</pre>",
"revise_opinion" : "无",
"rule_set" : "common"
} ],
"total" : 2
} 状态码:400
Bad Request
{
"error_code" : "CC.xxxxxxxx.400",
"error_msg" : "请求参数校验失败,请检查请求参数是否正确"
} 状态码:401
Unauthorized
{
"error_code" : "CC.00000003",
"error_msg" : "认证信息过期"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | Request succeeded! |
| 400 | Bad Request |
| 401 | Unauthorized |
错误码
请参见错误码。