查询单个问题详情和上下文代码 - GetSingleDefect
功能介绍
根据MergeKey查询某个问题的详细信息及上下文代码。
调用方法
请参见如何调用API。
授权信息
账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。
| 授权项 | 访问级别 | 资源类型(*为必须) | 条件键 | 别名 | 依赖的授权项 |
|---|---|---|---|---|---|
| codeartscheck:task:getReport | Read | task * | - | - | - |
| - | codeartscheck:ProjectId |
URI
GET /v1/defect
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| task_id | 是 | String | 参数解释: 任务ID,即新建检查任务接口的返回值,每个代码检查任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。即查询任务列表接口响应中的id字段。 约束限制: 不涉及。 取值范围: 长度为[1~32]个字符。 默认取值: 不涉及。 |
| merge_id | 否 | String | 参数解释: 合并请求ID或Commit ID,主要用于查询门禁级任务。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| job_id | 否 | String | 参数解释: 执行记录ID,即每一次执行版本级或门禁级扫描的唯一ID,主要用于查询门禁级任务。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| merge_key | 是 | String | 参数解释: MergeKey,问题ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Language | 否 | String | 参数解释: 语言,决定响应以哪种语言返回。 约束限制: 不涉及。 取值范围:
默认取值: zh-cn。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| status | String | 参数解释: 响应状态。 取值范围:
|
| result | SingleDefectAndContext object | 参数解释: 问题的详细信息及上下文代码。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| approver | String | 参数解释: 问题忽略的审核人用户名。 取值范围: 不涉及。 |
| language | String | 参数解释: 编程语言。 取值范围:
|
| filePath | String | 参数解释: 文件路径。 取值范围: 不涉及。 |
| line | Integer | 参数解释: 问题所在行号。 取值范围: 不涉及。 |
| functionName | String | 参数解释: 问题所在函数名。 取值范围: 不涉及。 |
| checkerName | String | 参数解释: 工具名称。 取值范围: 不涉及。 |
| checkerVersion | String | 参数解释: 工具版本。 取值范围: 不涉及。 |
| ruleName | String | 参数解释: 工具规则名称。 取值范围: 不涉及。 |
| defectLevel | String | 参数解释: 问题级别。 取值范围:
|
| createdAt | String | 参数解释: 问题发现时间,使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。例如:2020-09-25T12:05:00Z。 取值范围: 不涉及。 |
| criterionName | String | 参数解释: 规则名称。 取值范围: 不涉及。 |
| defectStatus | String | 参数解释: 问题状态。 取值范围:
|
| occursInfo | OccursInfo object | 参数解释: 代码片段信息。 |
| nickName | String | 参数解释: 问题责任人。 取值范围: 不涉及。 |
| statusComment | Array of Comment objects | 参数解释: 问题操作历史。 |
| ruleId | String | 参数解释: 规则ID。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| occurId | String | 参数解释: 问题代码片段ID。 取值范围: 不涉及。 |
| occurDescription | String | 参数解释: 问题描述。 取值范围: 不涉及。 |
| engine | String | 参数解释: 工具名称。 取值范围: 不涉及。 |
| sourceCodeUrl | String | 参数解释: 源码文件URL。 取值范围: 不涉及。 |
| events | Array of Events objects | 参数解释: 调用链信息。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| description | String | 参数解释: 问题详细描述。 取值范围: 不涉及。 |
| fixSuggestions | Array of strings | 参数解释: 修复建议。 |
| line | Integer | 参数解释: 问题所在文件行号。 取值范围: 不涉及。 |
| startLine | Integer | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| endLine | Integer | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| main | Boolean | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| path | String | 参数解释: 文件路径。 取值范围: 不涉及。 |
| tag | String | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| mainBuggyCode | String | 参数解释: 问题主事件对应的代码片段内容。 取值范围: 不涉及。 |
| codeContext | String | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| codeContextStartLine | Integer | 参数解释: 代码上下文起始行号。 取值范围: 不涉及。 |
| codePassage | Array of CodeLine objects | 参数解释: 代码上下文。 |
| events | Array of DefectEvents objects | 参数解释: 调用链信息。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| lineNumber | Integer | 参数解释: 行号。 取值范围: 不涉及。 |
| lineContent | String | 参数解释: 代码内容。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| events | Array of DefectEvents objects | 参数解释: 调用链信息。 |
| description | String | 参数解释: 问题详细描述。 取值范围: 不涉及。 |
| fix_suggestions | Array of strings | 参数解释: 修复建议。 |
| line | Integer | 参数解释: 问题所在文件行号。 取值范围: 不涉及。 |
| end_line | Integer | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| main | Boolean | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| path | String | 参数解释: 文件路径。 取值范围: 不涉及。 |
| tag | String | 参数解释: 废弃字段。 取值范围: 不涉及。 |
| main_buggy_code | String | 参数解释: 问题主事件对应的代码片段内容。 取值范围: 不涉及。 |
| code_context | String | 参数解释: 代码上下文。 取值范围: 不涉及。 |
| code_context_start_line | Integer | 参数解释: 代码上下文起始行号。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | Integer | 参数解释: 操作历史ID。 取值范围: 不涉及。 |
| comments | String | 参数解释: 备注。 取值范围: 长度为[1~256]个字符。 |
| mergeKey | String | 参数解释: MergeKey,问题ID。 取值范围: 长度为[1~32]个字符。 |
| createTime | String | 参数解释: 发生时间,使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。例如:2020-09-25T12:05:00Z。 取值范围: 不涉及。 |
| applicant | String | 参数解释: 操作人。 取值范围: 不涉及。 |
| statusFrom | String | 参数解释: 问题起始状态。 取值范围: 不涉及。 |
| statusTo | String | 参数解释: 问题目标状态。 取值范围: 不涉及。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
状态码:401
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
| error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
请求示例
查询ID为897acf5exxx48a5013cd的版本级任务下,MergeKey为08abe0dcxxx817d18e189的问题的详情及上下文。
GET https://{endpoint}/v1/defects?task_id=897acf5exxx48a5013cd&merge_key=08abe0dcxxx817d18e189 响应示例
状态码:400
Bad Request
{
"error_code" : "CC.xxxxxxxx.400",
"error_msg" : "请求参数校验失败,请检查请求参数是否正确"
} 状态码:401
Unauthorized
{
"error_code" : "CC.00000003",
"error_msg" : "认证信息过期"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 查询单个问题详情和上下文代码响应体 |
| 400 | Bad Request |
| 401 | Unauthorized |
错误码
请参见错误码。