查询重复代码块信息 - GetRelatedDuplicateBlocks
功能介绍
查询文件下涉及的所有重复代码块,或查询与某个重复代码块重复的其他代码块。
调用方法
请参见如何调用API。
授权信息
账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。
授权项 | 访问级别 | 资源类型(*为必须) | 条件键 | 别名 | 依赖的授权项 |
|---|---|---|---|---|---|
codeartscheck:task:getReport | Read | task * | - | - | - |
- | codeartscheck:ProjectId |
URI
GET /v1/tasks/{task_id}/related-duplicate-blocks
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
task_id | 是 | String | 参数解释: 任务ID,即新建检查任务接口的返回值,每个代码检查任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。即查询任务列表接口响应中的id字段。 约束限制: 不涉及。 取值范围: 长度为[1~128]个字符。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
job_id | 否 | String | 参数解释: 执行记录ID,即每一次执行版本级或门禁级扫描的唯一ID,主要用于查询门禁级任务。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
file_path | 否 | String | 参数解释: 文件路径,查询该文件下涉及的所有重复块。 约束限制: 与block_id参数二选一。 取值范围: 不涉及。 默认取值: 不涉及。 |
block_id | 否 | String | 参数解释: 重复块ID或重复文件ID,查询与该ID重复的所有代码块或文件。 约束限制: 与file_path参数二选一。 取值范围: 不涉及。 默认取值: 不涉及。 |
duplication_type | 否 | String | 参数解释: 重复类型,与block_id参数配合使用才有效。决定是重复块ID还是重复文件ID。 约束限制: 与block_id参数配合使用才有效。 取值范围:
默认取值: 不涉及。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Language | 否 | String | 参数解释: 语言,决定响应以哪种语言返回。 约束限制: 不涉及。 取值范围:
默认取值: zh-cn。 |
响应参数
状态码:200
参数 | 参数类型 | 描述 |
|---|---|---|
status | String | 参数解释: 响应状态。 取值范围:
|
result | Array of DuplicationFile objects | 参数解释: 查询重复代码块信息结果。 |
参数 | 参数类型 | 描述 |
|---|---|---|
filePath | String | 参数解释: 文件路径。 取值范围: 不涉及。 |
fileName | String | 参数解释: 文件名称。 取值范围: 不涉及。 |
blockInfo | Array of BlockInfo objects | 参数解释: 关联的重复信息。 |
参数 | 参数类型 | 描述 |
|---|---|---|
blockId | String | 参数解释: 重复块ID或重复文件ID。 取值范围: 不涉及。 |
duplicationType | String | 参数解释: 重复类型,与blockId配合使用才有效。决定是重复块ID还是重复文件ID。 取值范围:
|
filePath | String | 参数解释: 文件路径。 取值范围: 不涉及。 |
startLine | Integer | 参数解释: 重复开始行号。 取值范围: 不涉及。 |
endLine | Integer | 参数解释: 重复结束行号。 取值范围: 不涉及。 |
状态码:400
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
状态码:401
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
error_msg | String | 参数解释: 错误描述。 取值范围: 不涉及。 |
请求示例
在ID为897acf5exxx48a5013cd的任务下,查询vote/assets/plugins/bootstrap-switch/test/bootstrap-switch.js文件下的所有涉及的重复代码块和重复文件。
GET https://{endpoint}/v1/tasks/897acf5exxx48a5013cd/related-duplicate-blocks?file_path=vote%2Fassets%2Fplugins%2Fbootstrap-switch%2Ftest%2Fbootstrap-switch.js在ID为897acf5exxx48a5013cd的任务下,查询与ID为1的代码块重复的所有代码块。
GET https://{endpoint}/v1/tasks/897acf5exxx48a5013cd/related-duplicate-blocks?duplication_type=duplication_code&block_id=1在ID为897acf5exxx48a5013cd的任务下,查询与ID为1的重复文件重复的所有文件。
GET https://{endpoint}/v1/tasks/897acf5exxx48a5013cd/related-duplicate-blocks?duplication_type=duplication_file&block_id=1
响应示例
状态码:200
Request succeeded!
{
"status" : "success",
"error" : null,
"result" : [ {
"filePath" : "vote/assets/plugins/bootstrap-switch/test/bootstrap-switch.js",
"fileName" : "bootstrap-switch.js",
"blockInfo" : [ {
"blockId" : "1",
"duplicationType" : "duplication_file",
"filePath" : "vote/assets/plugins/bootstrap-switch/test/bootstrap-switch.js",
"startLine" : 0,
"endLine" : 0
} ]
} ]
} 状态码: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 |
错误码
请参见错误码。

