华为云用户手册

  • 不支持同步的DDL 在创建的同步库中,支持同步表及数据,不支持同步数据库,表空间,索引,外键,函数,存储过程,触发器,视图,分区(删除),主键(增加/删除/修改),事务,用户,角色,权限,事件等对象的操作。 表1和表2提供了不支持同步的索引和分区表相关的操作。这些不支持同步的操作不会影响在HTAP节点上查询和分析数据。 建表语句不能包含CHECK,表选项等。 在数据同步过程中,表3中的操作会导致HTAP中数据和GaussDB(for MySQL) 中数据不一致,应尽量避免使用。 表1 不支持同步的索引相关操作 DDL名称 SQL样例 添加索引 ALTER TABLE tbl_name ADD INDEX name; 重命名索引 ALTER TABLE tbl_name RENAME INDEX old_index_name TO new_index_name; 删除索引 DROP INDEX name ON table; 增加全文索引 CREATE FULLTEXT INDEX name ON table(column); 增加空间索引 ALTER TABLE geom ADD SPATIAL INDEX(g); 修改索引类型 ALTER TABLE tbl_name DROP INDEX i1, ADD INDEX i1(key_part,...) USING BTREE; 添加索引约束 ALTER TABLE tbl_name ADD CONSTRAINT UNIQUE USING BTREE (column); ALTER TABLE tbl_name ADD CONSTRAINT UNIQUE USING HASH(column); 表2 不支持同步的分区表相关操作 DDL名称 SQL样例 分析表分区 ALTER TABLE {db}.tp ANALYZE PARTITION p0; 检查表分区 ALTER TABLE {db}.tp CHECK PARTITION p0; 优化表分区 ALTER TABLE {db}.tp OPTIMIZE PARTITION p0; 重建表分区 ALTER TABLE {db}.tp REBUILD PARTITION p0; 修复表分区 ALTER TABLE {db}.tp REPAIR PARTITION p0; 创建数据库 CREATE DATABASE ddl_test_2; 修改行格式 ALTER TABLE tbl_name ROW_FORMAT = row_format; 设置持久表统计信息 ALTER TABLE tbl_name STATS_PERSISTENT=0, STATS_SAMPLE_PAGES=20,STATS_AUTO_RECALC=1, ALGORITHM=INPLACE, LOCK=NONE; 设置表的字符集 ALTER TABLE tbl_name CHARACTER SET = charset_name; 转换表的字符集 ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name; 优化表 OPTIMIZE TABLE tbl_name; 使用“强制”选项重建表 ALTER TABLE tbl_name FORCE; 执行空重建 ALTER TABLE tbl_name ENGINE=InnoDB; 重命名表空间 ALTER TABLESPACE tablespace_name RENAME TO new_tablespace_name; 增加表分区 ALTER TABLE {db}.tp ADD PARTITION (PARTITION p3 VALUES LESS THAN (2006) ); 指定排序规则 ALTER TABLE tbl_name DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci; 表3 导致数据不一致的DDL操作说明 DDL名称 SQL样例 删除主键 ALTER TABLE tbl_name DROP PRIMARY KEY; 增加主键 ALTER TABLE {db}.t1 ADD PRIMARY KEY (id); 增加删除主键 ALTER TABLE tbl_name DROP PRIMARY KEY, ADD PRIMARY KEY (column); 主键允许为NULL ALTER TABLE tbl_name MODIFY COLUMN key_column_name data_type; 修改主键类型 ALTER TABLE tbl_name MODIFY COLUMN key_column_name data_type not null; 增加外键 ALTER TABLE tbl1 ADD CONSTRAINT fk_name FOREIGN KEY index (col1)REFERENCES tbl2(col2) referential_actions; 删除外键 ALTER TABLE tbl DROP FOREIGN KEY fk_name; 增加列 说明: 支持一般的列增加,但不支持缺省值为如下取值的场景: 双引号 包含HTAP中不存在的函数,字符串,标志符 ALTER TABLE tbl_name ADD COLUMN column_name column_definition c VARCHAR(10) DEFAULT (CONCAT('1', '2')); 设置列的缺省值 说明: 支持缺省值的设置,但不支持缺省值为如下取值的场景: 双引号 包含HTAP中不存在的函数,字符串,标志符 ALTER TABLE tbl_name ALTER COLUMN col SET DEFAULT literal; 修改列不允许为NULL ALTER TABLE tbl_name MODIFY COLUMN column_name data_type NOT NULL; 同时修改列名和类型 ALTER TABLE t1 CHANGE b b1 VARCHAR(100); 创建无主键的表 ALTER TABLE t1 ADD COLUMN (c2 INT GENERATED ALWAYS AS (c1 + 1)STORED); 增加存储型衍生列 ALTER TABLE {db}.t1 ADD COLUMN (st2 INT GENERATED ALWAYS AS (c2 + 2)STORED), ALGORITHM=COPY; 增加虚拟型衍生列 ALTER TABLE t1 ADD COLUMN (c2 INT GENERATED ALWAYS AS (c1 + 1)VIRTUAL); 删除表分区 ALTER TABLE {db}.tp DROP PARTITION p4; 丢弃表分区 ALTER TABLE {db}.tp DISCARD PARTITION p2 TABLESPACE; 导入表分区 ALTER TABLE {db}.tp IMPORT PARTITION p2 TABLESPACE; 截断表分区 ALTER TABLE {db}.tp TRUNCATE PARTITION p2; 截断分区表 TRUNCATE {db}.tp; 联合表分区 ALTER TABLE {db}.tp_hash COALESCE PARTITION 2; 重新组织表分区 ALTER TABLE {db}.tp REORGANIZE PARTITION p0,p1,p2,p3 INTO ( ... ); 交换表分区 ALTER TABLE {db}.tp EXCHANGE PARTITION p0 WITH TABLE {db}.tp2; 删除表分区 ALTER TABLE {db}.tp REMOVE PARTITIONING; 使用REPLACE子句 CREATE OR REPLACE TABLE; 父主题: 数据同步
  • 响应示例 状态码: 200 Request succeeded! null 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • URI GET /v2/rules 表1 Query参数 参数 是否必选 参数类型 描述 rule_languages 否 String 规则对应的语言 rule_severity 否 String 缺陷等级,0致命,1严重,2一般,3提示 offset 否 Integer 分页索引,偏移量 最小值:0 缺省值:0 limit 否 Integer 每页显示的数量 最小值:1 最大值:1000 缺省值:100
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 info Array of RuleListItem objects 规则信息 total Integer 总数 表4 RuleListItem 参数 参数类型 描述 rule_set String 规则集规范分类 rule_id String 规则id 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 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:100000 Content-Type 是 String 设置媒体类型和编码格式 表3 请求Body参数 参数 是否必选 参数类型 描述 defect_id 是 String 问题id,多个时英文逗号分隔 defect_status 是 String 状态2:已忽略 1:已解决 0:未解决
  • 响应示例 状态码: 200 Request succeeded! null 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应示例 状态码: 200 Request succeeded! null 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 请求示例 任务配置检查参:检查参数的语言类型为csharp,状态为on POST https://{endpoint}/v2/{project_id}/tasks/{task_id}/config-parameters { "check_id" : 11, "ruleset_id" : "b113bxxxxxxxx5738bee86ecxxxxxxxx", "language" : "csharp", "status" : "on", "task_check_settings" : [ { "cfg_key" : "csharpCompileTool", "status" : "on", "cfg_value" : "msbuild" } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:100000 Content-Type 是 String 设置媒体类型和编码格式 表3 请求Body参数 参数 是否必选 参数类型 描述 check_id 是 Integer 检查工具ID 最小长度:1 最大长度:11 ruleset_id 是 String 规则集ID 最小长度:1 最大长度:64 language 是 String 规则集语言 最小长度:1 最大长度:128 status 是 String off:关闭,on:开启 最小长度:1 最大长度:3 task_check_settings 是 Array of TaskCheckSettingsItem objects 检查参数信息 表4 TaskCheckSettingsItem 参数 是否必选 参数类型 描述 cfg_key 是 String 检查参数对应的key值 最小长度:1 最大长度:50 status 是 String 参数状态 最小长度:1 最大长度:3 cfg_value 否 String 检查参数值 最小长度:1 最大长度:1000
  • 响应示例 状态码: 200 Request succeeded! null 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应示例 状态码: 200 Request succeeded! { "task_id" : "435b58ecf7f54c45907c1384d01c94a6", "task_name" : "CSharp_02201119", "creator_id" : "ecadebb5041146cc96f9780f3d905e20", "git_url" : "git@****_02201119.git", "git_branch" : "master", "last_check_time" : "2020-02-20 11:37:46", "code_line_total" : 20, "code_line" : 156, "code_quality" : 147.4, "issue_count" : 3, "risk_coefficient" : 23, "duplication_ratio" : "0.0%", "complexity_count" : 0, "duplicated_lines" : 0, "comment_lines" : 0, "comment_ratio" : "0", "duplicated_blocks" : 0, "last_exec_time" : "2 分 28 秒", "check_type" : "source", "created_at" : "2020-02-20 11:21:11", "cyclomatic_complexity_per_method" : "84.0", "cyclomatic_complexity_per_file" : "112.0", "critical_count" : 2, "major_count" : 1, "minor_count" : 1, "suggestion_count" : 1, "is_access" : 0, "trigger_type" : 1, "file_duplication_ratio" : "33.3%", "new_count" : 0, "solve_count" : 0, "duplicated_files" : 0, "new_critical_count" : "0", "new_major_count" : "0", "new_minor_count" : "0", "new_suggestion_count" : "0" } 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 task_id String 任务id task_name String 任务名字 creator_id String 创建者id git_url String 代码仓地址 git_branch String 代码仓分支,如果是MR模式,为源分支 last_check_time String 上一次检查时间 code_line_total Integer 代码总行数 code_line Integer 代码有效行数 code_quality Number 代码质量 issue_count Integer 问题数 risk_coefficient Number 危险系数 duplication_ratio String 重复比例 complexity_count Integer 复杂度 duplicated_lines Integer 重复行数 comment_lines Integer 注释行数 comment_ratio String 注释比例 duplicated_blocks Integer 重复块 last_exec_time String 上次执行时间 check_type String 检查类型 created_at String 创建时间 cyclomatic_complexity_per_method String 代码平均复杂度 cyclomatic_complexity_per_file String 代码平均复杂度(文件) critical_count String 致命问题数 major_count String 严重问题数 minor_count String 一般问题数 suggestion_count String 提示问题数 is_access String 门禁质量是否通过 trigger_type String 任务触发方式 file_duplication_ratio String 文件重复率 new_count Integer 新增问题数 solve_count Integer 已解决问题数 duplicated_files Integer 重复文件数目 new_critical_count String 新增致命问题数 new_major_count String 新增严重问题数 new_minor_count String 新增一般问题数 new_suggestion_count String 新增提示问题数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 exec_id String 执行id 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 Request succeeded! { "exec_id" : "d163535d0*******81d6a7654443e" } 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:100000 Content-Type 是 String 设置媒体类型和编码格式 表3 请求Body参数 参数 是否必选 参数类型 描述 username 否 String 该任务对应临时仓库有权限的用户名 access_token 否 String 该任务对应临时仓库有权限的用户token git_url 否 String 该任务对应的临时仓库地址 git_branch 否 String 该任务对应的临时仓库分支
  • 请求示例 执行检查任务:执行任务对应代码仓URL根据实际显示,代码仓分支为master,用户名根据实际显示 POST https://{endpoint}/v2/tasks/{taskid}/run { "git_url" : "http://github.xxxxxxxx.git", "git_branch" : "master", "username" : "test", "access_token" : "xLD56xxxxxxxxxJF3Sdxxxx" }
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。 POST:请求服务器新增资源或执行特殊操作。 DELETE:请求服务器删除指定资源,如删除对象等。 HEAD:请求服务器资源头部。 PATCH:请求服务器更新资源的部分内容。当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token获取请求认证的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token获取请求认证接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxx为project的名称,如cn-north-1,您可以从终端节点中获取。 scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可以设置Token额作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见获取用户Token获取请求认证。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于获取用户Token获取请求认证接口,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 如下公共消息头需要添加到请求中。 Content-Type:消息体的类型(格式),必选,默认取值为“application/json”,有其他取值时会在具体接口中专门说明。 X-Auth-Token:用户Token,可选,当使用Token方式认证时,必须填充该字段。用户Token也就是调用获取用户Token获取请求认证接口的响应值,该接口是唯一不需要认证的接口。 公有云API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见认证鉴权。 X-Project-ID:子项目ID,可选,在多项目场景中使用。 X-Domain-ID:账号ID。 对于获取用户Token获取请求认证接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
  • 请求URI 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 请求URI由四部分构成:{URI-scheme} :// {Endpoint} / {resource-path} ? {query-string} 参数 说明 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器域名或IP,不同服务不同区域的Endpoint不同,您可以从终端节点中获取。 例如IAM服务在“华北-北京一”区域的Endpoint为“iam.cn-north-1.myhuaweicloud.com”。 resource-path 资源路径,即API访问路径,从具体API的URI模块获取。例如,获取用户Token接口的resource-path为/v3/auth/tokens。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个?,形式为参数名=参数取值。例如,limit=10表示查询不超过10条数据。 例如,您需要获取IAM在“华北-北京一”区域的Token,则需使用“华北-北京一”区域的Endpoint(iam.cn-north-1.myhuaweicloud.com),并在获取用户Token获取请求认证的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 设置媒体类型和编码格式 X-Auth-Token 是 String 用户Token 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:100000 表2 请求Body参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:1 最大长度:50 template_name 是 String 新规则集名称 最小长度:1 最大长度:500 language 是 String 规则集语言 最小长度:1 最大长度:128 is_default 是 String 如果有基于的规则集则是1,没有基于的规则集则是0 最小长度:1 最大长度:1 rule_ids 是 String 新启用规则ids 最小长度:1 最大长度:4000 uncheck_ids 否 String 新关闭规则id 最小长度:1 最大长度:4000 template_id 否 String 规则集ID 最小长度:1 最大长度:50 custom_attributes 否 Array of CustomAttributes objects 自定义规则参数项,支持修改规则阈值 表3 CustomAttributes 参数 是否必选 参数类型 描述 attribute 否 String 配置项属性,severity:为问题级别 rules 否 Array of CustomAttributesRule objects 规则详细 表4 CustomAttributesRule 参数 是否必选 参数类型 描述 rule_id 否 String 规则ID value 否 String attribute的问题级别,0致命,1严重,2一般,3提示 rule_config_list 否 Array of RuleConfig objects 规则阈值详细 表5 RuleConfig 参数 是否必选 参数类型 描述 id 否 Integer 规则配置ID rule_id 否 Integer 规则ID default_value 否 String 默认值 option_value 否 String 当前 option_key 否 String 当前规则配置项key option_name 否 String 当前规则配置项名称 template_id 否 String 规则集id description 否 String 描述
  • 请求示例 创建自定义规则集:规则集对应的项目ID、模板ID根据实际显示,模板名称为test_cpp,语言类型为cpp POST https://{endpoint}/v2/ruleset { "project_id" : "24b97exxxxxxxxfb912625b14cxxxxxx", "template_id" : "da303dxxxxxxxxaca60dbcc2e2xxxxxx", "template_name" : "test_cpp", "language" : "cpp", "is_default" : "1", "rule_ids" : "8139,8138", "uncheck_ids" : "1101,1102" }
  • 响应参数 状态码: 201 表6 响应Body参数 参数 参数类型 描述 template_id String 规则集ID 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 201 Request succeeded! { "template_id" : "c53417a4804f45eba9c11991131c9e79" } 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • URI GET /v2/{project_id}/tasks 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 分页索引,偏移量 最小值:0 缺省值:0 limit 否 Integer 每页显示的数量,每页最多显示100条 最小值:1 最大值:100 缺省值:10
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 tasks Array of SimpleTaskInfoV2 objects 任务信息 total Integer 总数 表5 SimpleTaskInfoV2 参数 参数类型 描述 task_id String 任务id task_name String 任务名字 creator_id String 创建者id git_url String 代码仓地址 git_branch String 代码仓分支,如果是MR模式,为源分支 created_at String 创建时间 last_check_time String 上一次检查时间 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 Request succeeded! { "tasks" : [ { "task_id" : "435b58e********d01c94a6", "task_name" : "CSharp_02201119", "creator_id" : "ecadebb5041***9780f3d905e20", "git_url" : "git@********_02201119.git", "git_branch" : "master", "created_at" : "2020-02-20 11:21:11", "last_check_time" : "2020-02-20 11:37:46" }, { "task_id" : "435b58343tg5g36907c1384d01c94a6", "task_name" : "CSharp_066", "creator_id" : "ecadebb3664*****", "git_url" : "git@****_02201119.git", "git_branch" : "master", "created_at" : "2020-02-20 11:21:11", "last_check_time" : "2020-02-20 11:37:46" } ], "total" : 2 } 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应示例 状态码: 200 Request succeeded! null 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应示例 状态码: 200 Request succeeded! { "info" : [ { "rule_language" : "cpp", "rule_id" : "1614", "checked" : "1", "rule_name" : "A buffer must have size of 2 integers if used as parameter of pipe().", "rule_severity" : "1", "tags" : "cwe", "rule_config_list" : [ ] }, { "rule_language" : "cpp", "rule_id" : "1611", "checked" : "1", "rule_name" : "A buffer must have size of 2 integers if used as parameter of pipe().", "rule_severity" : "1", "tags" : "cwe", "rule_config_list" : [ { "id" : 250, "rule_id" : 11707, "template_id" : "906e7eac47dd4bde9c984f5e6f2a54e8", "option_key" : "threshold", "option_name" : "新增阈值", "option_value" : "10", "default_value" : "20", "description" : "代码复杂度超过阈值,则会被识别为超大圈复杂度,与圈复杂度统计区别在于统计SWITCH的时候,只统计SWITCH的个数,不统计case,default,必填" }, { "id" : 251, "rule_id" : 11707, "template_id" : "906e7eac47dd4bde9c984f5e6f2a54e8", "option_key" : "threshold_modify", "option_name" : "修改阈值", "option_value" : "30", "default_value" : "20", "description" : "代码复杂度超过阈值,则会被识别为超大圈复杂度。与圈复杂度统计区别在于统计SWITCH的时候,只统计SWITCH的个数,不统计case,default,修改阈值要比新增阈值大,非必填" } ] } ], "total" : 2 } 状态码: 400 Bad Request { "error_code" : "CC.00000000", "error_msg" : "网络繁忙,请稍后再试" } 状态码: 401 Unauthorized { "error_code" : "CC.00000003", "error_msg" : "认证信息过期" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 info Array of RuleItem objects 规则集的规则列表信息 total Integer 总数 表5 RuleItem 参数 参数类型 描述 rule_id String 规则id rule_language String 规则所属语言 rule_name String 规则名称 rule_severity String 规则问题级别 tags String 规则标签 checked String 规则状态0:未启用,1:已启用 rule_config_list Array of RuleConfig objects 规则配置参数阈值相关信息 表6 RuleConfig 参数 参数类型 描述 id Integer 规则配置ID rule_id Integer 规则ID default_value String 默认值 option_value String 当前 option_key String 当前规则配置项key option_name String 当前规则配置项名称 template_id String 规则集id description String 描述 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
共100000条