diff --git a/app/docs/slate/source/api.html.md b/app/docs/slate/source/api.html.md index a846317c4..0031a99f4 100644 --- a/app/docs/slate/source/api.html.md +++ b/app/docs/slate/source/api.html.md @@ -16,6 +16,7 @@ includes: - users - projects - repositories + - traces - pulls - issues - organizations diff --git a/app/docs/slate/source/includes/_projects.md b/app/docs/slate/source/includes/_projects.md index d4899a710..08ad6c234 100644 --- a/app/docs/slate/source/includes/_projects.md +++ b/app/docs/slate/source/includes/_projects.md @@ -280,7 +280,7 @@ repo |是| |string |项目标识identifier ### 返回字段说明 参数 | 类型 | 字段说明 --------- | ----------- | ----------- -menu_name |string|导航名称, home:主页,code:代码库,issues:疑修,pulls:合并请求,devops:工作流,versions:里程碑,activity:动态,setting:仓库设置 +menu_name |string|导航名称, home:主页,code:代码库,issues:疑修,pulls:合并请求,devops:工作流,versions:里程碑,wiki:维基,services:服务,activity:动态,setting:仓库设置 > 返回的JSON示例: @@ -408,7 +408,7 @@ await octokit.request('POST /api/yystopf/ceshi/project_units') ### 请求参数 参数 | 必选 | 默认 | 类型 | 字段说明 --------- | ------- | ------- | -------- | ---------- -|unit_types |是| |array | 项目模块内容, 支持以下参数:code:代码库,issues:疑修,pulls:合并请求,devops:工作流,versions:里程碑 | +|unit_types |是| |array | 项目模块内容, 支持以下参数:code:代码库,issues:疑修,pulls:合并请求,devops:工作流,versions:里程碑,wiki:维基,resources:资源库,services:服务 | ### 返回字段说明: diff --git a/app/docs/slate/source/includes/_traces.md b/app/docs/slate/source/includes/_traces.md new file mode 100644 index 000000000..6bdfb950a --- /dev/null +++ b/app/docs/slate/source/includes/_traces.md @@ -0,0 +1,216 @@ +# Traces + +## 代码溯源初始化 +用户同意协议后请求的接口,创建代码溯源的账号 + +> 示例: + +```shell +curl -X POST \ +http://localhost:3000/api/traces/trace_users.json +``` + +```javascript +await octokit.request('POST /api/traces/trace_users.json') +``` + +### HTTP 请求 +`POST api/traces/trace_users.json` + + +> 返回的JSON示例: + +```json +{ + "status": 0, + "message": "success" +} +``` + + +## 代码分析结果列表 +查询项目下代码分析的结果 + +> 示例: + +```shell +curl -X GET \ +http://localhost:3000/api/traces/yystopf/many_branch/task_results.json +``` + +```javascript +await octokit.request('GET /api/traces/:owner/:repo/task_results.json') +``` + +### HTTP 请求 +`GET api/traces/:owner/:repo/task_results.json` + +### 请求参数 +参数 | 必选 | 默认 | 类型 | 字段说明 +--------- | ------- | ------- | -------- | ---------- +owner|是|否|string | 项目所有者标识| +repo|是 | 否|string | 项目标识 | +page |否| 1 | int | 页码 | +limit |否| 15 | int | 每页数量 | + +### 返回字段说明(暂缺) + + +> 返回的JSON示例: + +```json +{ + "data": [ + { + "accuracy": "20", + "code_type": "C", + "depth": "2", + "detect_flag": "快速-组件级", + "detect_rule": "快速-组件级,2,20,,开源软件,50,10", + "detect_startdate": "2022-05-10 15:59:46 ", + "detect_status": "fail", + "detectflag": "快速-组件级", + "fail_reason": "Invalid package type", + "file_name": "many_branch.zip", + "license_process": "100", + "licenseparam": "开源软件", + "package_type": "", + "product_name": "84727546110", + "project_id": "6dbc3e42-5857-4ca4-a54d-58fd9dbf6dc5", + "sim_process": "100", + "similarity_process": "2", + "task_id": "15139171-091b-4316-98b1-6068970efa44", + "totalsize": 5, + "uid": "78", + "vuln_process": "", + "vulnlevel": "" + } + ] +} +``` + + + + +## 新建分析 +用户选择仓库分支进行代码分析的接口 + +> 示例: + +```shell +curl -X POST \ +http://localhost:3000/api/traces/yystopf/many_branch/tasks.json +``` + +```javascript +await octokit.request('POST /api/traces/:owner/:repo/tasks.json') +``` + +### HTTP 请求 +`POST api/traces/:owner/:repo/tasks.json` + +### 请求参数 +参数 | 必选 | 默认 | 类型 | 字段说明 +--------- | ------- | ------- | -------- | ---------- +owner |是 | 否 | string | 项目所有者标识 | +repo |是 | 否 | string | 项目标识 | +branch_name|是 | 否| string | 分支名称 | + + +> 返回的JSON示例: + +```json +{ + "status": 0, + "message": "success" +} +``` + + +## 重新扫描 +对代码分析结果进行再次分析 + +> 示例: + +```shell +curl -X GET \ +http://localhost:3000/api/traces/yystopf/many_branch/reload_task.json +``` + +```javascript +await octokit.request('GET /api/traces/:owner/:repo/reload_task.json') +``` + +### HTTP 请求 +`GET api/traces/:owner/:repo/reload_task.json` + +### 请求参数 +参数 | 必选 | 默认 | 类型 | 字段说明 +--------- | ------- | ------- | -------- | ---------- +owner |是 | 否 | string | 项目所有者标识 | +repo |是 | 否 | string | 项目标识 | +project_id|是 | 否| string | 代码分析结果里的project_id | + + +> 返回的JSON示例: + +```json +{ + "status": 0, + "message": "success" +} +``` + + + +## 下载报告 +把代码分析的结果下载到本地 + +> 示例: + +```shell +curl -X GET \ +http://localhost:3000/api/traces/yystopf/many_branch/task_pdf.json +``` + +```javascript +await octokit.request('GET /api/traces/:owner/:repo/task_pdf.json') +``` + +### HTTP 请求 +`GET api/traces/:owner/:repo/task_pdf.json` + +### 请求参数 +参数 | 必选 | 默认 | 类型 | 字段说明 +--------- | ------- | ------- | -------- | ---------- +owner |是 | 否 | string | 项目所有者标识 | +repo |是 | 否 | string | 项目标识 | +task_id|是 | 否| string | 代码分析结果里的task_id | + + +> 返回的JSON示例: + +```json +{ + "status": 0, + "message": "success" +} +``` + diff --git a/public/docs/api.html b/public/docs/api.html index 45da64400..1fe7bc08e 100644 --- a/public/docs/api.html +++ b/public/docs/api.html @@ -543,6 +543,26 @@ +
用户同意协议后请求的接口,创建代码溯源的账号
+ +++示例:
+
curl -X POST \
+http://localhost:3000/api/traces/trace_users.json
+
await octokit.request('POST /api/traces/trace_users.json')
+
POST api/traces/trace_users.json
++返回的JSON示例:
+
{
+ "status": 0,
+ "message": "success"
+}
+
查询项目下代码分析的结果
+ +++示例:
+
curl -X GET \
+http://localhost:3000/api/traces/yystopf/many_branch/task_results.json
+
await octokit.request('GET /api/traces/:owner/:repo/task_results.json')
+
GET api/traces/:owner/:repo/task_results.json
参数 | +必选 | +默认 | +类型 | +字段说明 | +
---|---|---|---|---|
owner | +是 | +否 | +string | +项目所有者标识 | +
repo | +是 | +否 | +string | +项目标识 | +
page | +否 | +1 | +int | +页码 | +
limit | +否 | +15 | +int | +每页数量 | +
++返回的JSON示例:
+
{
+ "data": [
+ {
+ "accuracy": "20",
+ "code_type": "C",
+ "depth": "2",
+ "detect_flag": "快速-组件级",
+ "detect_rule": "快速-组件级,2,20,,开源软件,50,10",
+ "detect_startdate": "2022-05-10 15:59:46 ",
+ "detect_status": "fail",
+ "detectflag": "快速-组件级",
+ "fail_reason": "Invalid package type",
+ "file_name": "many_branch.zip",
+ "license_process": "100",
+ "licenseparam": "开源软件",
+ "package_type": "",
+ "product_name": "84727546110",
+ "project_id": "6dbc3e42-5857-4ca4-a54d-58fd9dbf6dc5",
+ "sim_process": "100",
+ "similarity_process": "2",
+ "task_id": "15139171-091b-4316-98b1-6068970efa44",
+ "totalsize": 5,
+ "uid": "78",
+ "vuln_process": "",
+ "vulnlevel": ""
+ }
+ ]
+}
+
用户选择仓库分支进行代码分析的接口
+ +++示例:
+
curl -X POST \
+http://localhost:3000/api/traces/yystopf/many_branch/tasks.json
+
await octokit.request('POST /api/traces/:owner/:repo/tasks.json')
+
POST api/traces/:owner/:repo/tasks.json
参数 | +必选 | +默认 | +类型 | +字段说明 | +
---|---|---|---|---|
owner | +是 | +否 | +string | +项目所有者标识 | +
repo | +是 | +否 | +string | +项目标识 | +
branch_name | +是 | +否 | +string | +分支名称 | +
++返回的JSON示例:
+
{
+ "status": 0,
+ "message": "success"
+}
+
对代码分析结果进行再次分析
+ +++示例:
+
curl -X GET \
+http://localhost:3000/api/traces/yystopf/many_branch/reload_task.json
+
await octokit.request('GET /api/traces/:owner/:repo/reload_task.json')
+
GET api/traces/:owner/:repo/reload_task.json
参数 | +必选 | +默认 | +类型 | +字段说明 | +
---|---|---|---|---|
owner | +是 | +否 | +string | +项目所有者标识 | +
repo | +是 | +否 | +string | +项目标识 | +
project_id | +是 | +否 | +string | +代码分析结果里的project_id | +
++返回的JSON示例:
+
{
+ "status": 0,
+ "message": "success"
+}
+
把代码分析的结果下载到本地
+ +++示例:
+
curl -X GET \
+http://localhost:3000/api/traces/yystopf/many_branch/task_pdf.json
+
await octokit.request('GET /api/traces/:owner/:repo/task_pdf.json')
+
GET api/traces/:owner/:repo/task_pdf.json
参数 | +必选 | +默认 | +类型 | +字段说明 | +
---|---|---|---|---|
owner | +是 | +否 | +string | +项目所有者标识 | +
repo | +是 | +否 | +string | +项目标识 | +
task_id | +是 | +否 | +string | +代码分析结果里的task_id | +
++返回的JSON示例:
+
{
+ "status": 0,
+ "message": "success"
+}
+
获取合并请求详情接口