接口设计¶
文档中介绍了appstore-be模块的接口设计详情,共有六个部分,分别对应于app管理、包管理、评论管理、应用推送、仓库管理、消息中心。
1. 应用¶
应用是应用商店基本的发布单位。
1.1 获取应用列表¶
根据入参查询应用列表。
URI: /mec/appstore/v1/apps
METHOD: GET
请求参数:
名称 |
描述 |
IN |
必选 |
---|---|---|---|
name |
应用名 |
request param |
yes |
provider |
应用提供商 |
request param |
yes |
type |
应用类型 |
request param |
yes |
affinity |
架构 |
request param |
yes |
userId |
应用创建人 |
request param |
yes |
响应示例:
200 OK
[
{
"appId": "string",
"iconUrl": "string",
"name": "string",
"provider": "string",
"type": "string",
"shortDesc": "string",
"createTime": "string",
"details": "string",
"downloadCount": 0,
"affinity": "string",
"industry": "string",
"contact": "string",
"score": 0,
"userId": "string",
"userName": "string",
"status": "string",
"showType": "string",
"deployMode": "string",
"hotApp": false
}
]
1.2 获取应用¶
根据应用ID获取应用详细信息。
URI: /mec/appstore/v1/apps/{appId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
app id |
path |
yes |
响应示例:
200 OK
{
"appId": "string",
"iconUrl": "string",
"name": "string",
"provider": "string",
"type": "string",
"shortDesc": "string",
"createTime": "string",
"details": "string",
"downloadCount": 0,
"affinity": "string",
"industry": "string",
"contact": "string",
"score": 0,
"userId": "string",
"userName": "string"
"status": "string",
"showType": "string",
"deployMode": "string",
"hotApp": false
}
1.3 注册应用¶
注册应用。
URI: /mec/appstore/v1/apps
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
yes |
userName |
用户名 |
request param |
yes |
file |
应用包文件 |
request body form |
yes |
icon |
应用图标文件 |
request body form |
yes |
demoVideo |
应用视频文件 |
request body form |
no |
type |
应用类型 |
request body form |
yes |
shortDesc |
应用简述 |
request body form |
yes |
affinity |
架构 |
request body form |
yes |
industry |
应用所属行业 |
request body form |
yes |
testTaskId |
测试任务id |
request body form |
no |
showType |
显示类型:public、inner-public、private |
request body form |
no |
响应示例:
200 OK
{
"appName": "string",
"appId": "string",
"packageId": "string",
"provider": "string",
"version": "string"
}
1.4 删除应用¶
根据应用ID删除应用。
URI: /mec/appstore/v1/apps/{appId}
METHOD: DELETE
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
yes |
userName |
应用名 |
request param |
yes |
appId |
应用ID |
path |
yes |
响应示例:
200 OK
"delete App success."
1.5 获取应用图标¶
根据应用ID获取应用图标。
URI: /mec/appstore/v1/apps/{appId}/icon
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
响应示例:
200 OK
binary output.
1.6 分片上传应用包¶
分片上传应用包。
URI: /mec/appstore/v1/apps/upload
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
id |
分包ID |
request body form |
no |
chunkNumber |
当前文件块编号 |
request body form |
yes |
chunkSize |
分块大小 |
request body form |
no |
currentChunkSize |
当前分块大小 |
request body form |
no |
totalSize |
总大小 |
request body form |
no |
identifier |
文件表示 |
request body form |
yes |
filename |
文件名 |
request body form |
no |
relativePath |
文件相对路径 |
request body form |
no |
totalChunks |
总块数 |
request body form |
no |
type |
文件类型 |
request body form |
no |
file |
文件 |
request body form |
yes |
响应示例:
200 OK
{
"upload package block success"
}
1.7 合并应用包¶
合并应用包。
URI: /mec/appstore/v1/apps/merge
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
fileName |
文件名 |
request param |
yes |
guid |
文件标识 |
request param |
yes |
响应示例:
200 OK
{
"file address"
}
1.8 注册虚机应用¶
注册虚机应用。
URI: /mec/appstore/v1/apps/vm-register
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
yes |
userName |
应用名 |
request param |
yes |
fileAddress |
应用包文件相对路径 |
request body form |
yes |
icon |
应用图标文件 |
request body form |
yes |
demoVideo |
应用视频文件 |
request body form |
no |
type |
应用类型 |
request body form |
yes |
shortDesc |
应用简述 |
request body form |
yes |
affinity |
架构 |
request body form |
yes |
industry |
应用所属行业 |
request body form |
yes |
testTaskId |
测试任务id |
request body form |
no |
showType |
显示类型:public、inner-public、private |
request body form |
no |
响应示例:
200 OK
{
"appName": "string",
"appId": "string",
"packageId": "string",
"provider": "string",
"version": "string"
}
1.9 获取应用视频¶
根据应用ID获取应用视频。
URI: /mec/appstore/v1/apps/{appId}/demoVideo
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
响应示例:
200 OK
binary output.
1.10 修改热门应用¶
根据应用ID更改应用是否为热门应用。
URI: /mec/appstore/v2/apps/hotapps
METHOD: PUT
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
响应示例:
200 OK
set hot apps success.
1.11 获取应用列表-v2¶
分页查询应用列表。
URI: /mec/appstore/v2/apps/action/query
METHOD: POST
请求参数:
名称 |
描述 |
IN |
必选 |
---|---|---|---|
QueryAppReqDto |
查询应用条件 |
request body |
yes |
QueryAppReqDto
字段名 |
描述 |
字段类型 |
必选 |
---|---|---|---|
types |
应用类型 |
List |
no |
showType |
应用显示类型 |
List |
no |
affinity |
应用架构 |
List |
no |
industry |
应用行业 |
List |
no |
workloadType |
应用负载类型 |
List |
no |
userId |
用户Id |
String |
no |
queryCtrl |
查询条件 |
QueryAppCtrlDto |
yes |
QueryAppCtrlDto
字段名 |
描述 |
字段类型 |
必选 |
---|---|---|---|
limit |
分页查询每页查询数量[1,500] |
int |
yes |
offset |
分页查询起始页,从0开始 |
int |
yes |
sortItem |
查询排序字段 |
String |
no |
sortType |
查询排序方式升序/降序 |
String |
no |
status |
应用状态 |
List |
no |
appName |
应用名称 |
String |
no |
响应示例:
200 OK
{
"results": [
{
"appId": "string",
"packageId": "string",
"iconUrl": "string",
"name": "string",
"provider": "string",
"type": "string",
"shortDesc": "string",
"showType": "string",
"createTime": "string",
"details": "string",
"downloadCount": int,
"affinity": "string",
"industry": "string",
"contact": "string",
"score": 5.0,
"userId": "string",
"userName": "string",
"status": "string",
"deployMode": "string",
"hotApp": false,
"exprienceAble": false
}
],
"limit": 1,
"offset": 0,
"total": 9
}
1.12 获取应用-v2¶
根据应用ID获取应用详细信息。
URI: /mec/appstore/v2/apps/{appId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
app id |
path |
yes |
响应示例:
200 OK
{
"data": {
"appId": "string",
"iconUrl": "string",
"name": "string",
"provider": "string",
"type": "string",
"shortDesc": "string",
"showType": "string",
"createTime": "string",
"details": "string",
"downloadCount": int,
"affinity": "string",
"industry": "string",
"contact": "string",
"score": 5.0,
"userId": "string",
"userName": "string",
"status": "string",
"deployMode": "string",
"hotApp": false
},
"retCode": 0,
"params": "[string]",
"message": "string"
}
1.13 注册应用-v2¶
注册应用。
URI: /mec/appstore/v2/apps
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
yes |
userName |
应用名 |
request param |
yes |
file |
应用包文件 |
request body form |
yes |
icon |
应用图标文件 |
request body form |
yes |
demoVideo |
应用视频文件 |
request body form |
no |
type |
应用类型 |
request body form |
yes |
shortDesc |
应用简述 |
request body form |
yes |
affinity |
架构 |
request body form |
yes |
industry |
应用所属行业 |
request body form |
yes |
testTaskId |
测试任务id |
request body form |
no |
showType |
显示类型:public、inner-public、private |
request body form |
no |
响应示例:
200 OK
{
"data": {
"appName": "string",
"appId": "string",
"packageId": "string",
"provider": "string",
"version": "string"
},
"retCode": 0,
"params": "[string]",
"message": "string"
}
2. 应用包¶
应用包属于应用,每个应用包含至少一个应用包。
2.1 通过应用ID获取应用包列表¶
通过应用ID获取应用包列表。
URI: /mec/appstore/v1/apps/{appId}/packages
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
userId |
用户ID |
request param |
yes |
access_token |
请求token |
request header |
yes |
响应示例:
200 OK
[
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
}
]
2.2 获取应用包¶
通过应用ID和应用包ID获取应用包。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
}
2.3 删除应用包¶
通过应用ID和应用包ID删除应用包。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}
METHOD: DELETE
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户Id |
request param |
yes |
userName |
用户名 |
request param |
yes |
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
delete package success.
2.4 下载应用包¶
通过应用ID和应用包ID下载应用包。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/action/download
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
binary output.
2.5 获取文件内容¶
通过应用ID和应用包ID以及文件路径获取应用包中文件内容。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/files
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
package id |
path |
yes |
filePath |
file path |
request body |
yes |
appId |
应用ID |
path |
yes |
响应示例:
200 OK
file content output.
2.6 应用发布¶
通过应用ID和应用包ID发布应用。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/action/publish
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
isFree |
是否免费 |
request body |
no |
price |
应用定价信息 |
request body |
no |
响应示例:
200 OK
Publish Success.
2.7 应用测试¶
通过应用ID和应用包ID测试应用。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/action/test
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
access_token |
请求token |
request header |
yes |
响应示例:
200 OK
{
"atpTaskId": "string",
"status": "string"
}
2.8 获取应用包列表¶
通过用户ID获取应用包列表。
URI: /mec/appstore/v1/packages
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
ueserId |
用户id |
request param |
yes |
access_token |
请求token |
request header |
yes |
响应示例:
200 OK
[
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
}
]
2.9 修改应用¶
通过应用ID和应用包ID修改应用。
URI: /mec/appstore/v1/apps/{appId}/package/{packageId}
METHOD: PUT
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
industry |
应用行业 |
request body form |
no |
type |
应用类型 |
request body form |
no |
icon |
应用图标 |
request body form |
no |
video |
应用视频 |
request body form |
no |
affinity |
应用架构 |
request body form |
no |
shortDesc |
应用描述 |
request body form |
no |
showType |
应用显示类型 |
request body form |
no |
响应示例:
200 OK
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
}
2.10 应用发布-v2¶
通过应用ID和应用包ID发布应用。
URI: /mec/appstore/v2/apps/{appId}/packages/{packageId}/action/publish
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
isFree |
是否免费 |
request body |
no |
price |
应用定价信息 |
request body |
no |
响应示例:
200 OK
Publish Success.
{
"data": "Publish Success",
"retCode": 0,
"params": "[string]",
"message": "string"
}
2.11 通过应用ID获取应用包列表-v2¶
通过应用ID分页查询应用包列表。
URI: /mec/appstore/v2/apps/{appId}/packages
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
userId |
用户ID |
request param |
yes |
access_token |
请求token |
request header |
yes |
limit |
分页查询每页查询数量,建议设置较大值,一次性查询完该应用的所有应用包 |
request param |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
响应示例:
200 OK
[
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
}
]
2.12 获取应用包-v2¶
通过应用ID和应用包ID获取应用包。
URI: /mec/appstore/v2/apps/{appId}/packages/{packageId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
{
"data":
{
"packageId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"provider": "string",
"testTaskId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"showType": "string",
"deployMode": "string"
},
"retCode": 0,
"params": "[string]",
"message": "string"
}
2.13 获取应用包列表-v2¶
分页获取应用包列表。
URI: /mec/appstore/v2/packages/action/query
METHOD: POST
请求参数:
名称 |
描述 |
IN |
必选 |
---|---|---|---|
QueryAppCtrlDto |
查询应用条件 |
request body |
yes |
access_token |
请求token |
request header |
yes |
QueryAppCtrlDto
字段名 |
描述 |
字段类型 |
必选 |
---|---|---|---|
limit |
分页查询每页查询数量[1,500] |
int |
yes |
offset |
分页查询起始页,从0开始 |
int |
yes |
sortItem |
查询排序字段 |
String |
no |
sortType |
查询排序方式升序/降序 |
String |
no |
status |
应用状态 |
List |
no |
appName |
应用名称 |
String |
no |
响应示例: |
200 OK
{
"results": [
{
"packageId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"showType": "string",
"testTaskId": "string",
"provider": "string",
"demoVideoName": "string",
"deployMode": "string"
}
],
"limit": 1,
"offset": 0,
"total": 12
}
2.14 根据创建时间区间获取应用包列表-v2¶
根据创建时间区间分页获取应用包列表。
URI: /mec/appstore/v2/packages
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
offset |
分页查询起始页,从0开始 |
request param |
yes |
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
startTime |
应用创建时间的起始时间 |
request param |
no |
endTime |
应用创建时间的终止时间 |
request param |
no |
响应示例:
200 OK
{
"results": [
{
"packageId": "string",
"size": "string",
"format": "string",
"createTime": "string",
"name": "string",
"version": "string",
"type": "string",
"details": "string",
"affinity": "string",
"industry": "string",
"contact": "string",
"appId": "string",
"userId": "string",
"userName": "string",
"status": "string",
"shortDesc": "string",
"showType": "string",
"testTaskId": "string",
"provider": "string",
"demoVideoName": "string",
"deployMode": "string"
}
],
"limit": 1,
"offset": 0,
"total": 12
}
2.15 下载应用图标¶
通过应用ID和应用包ID下载应用图标。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/icon
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
binary output.
2.16 应用下架¶
通过应用ID和应用包ID下架应用。
URI: /mec/appstore/v1/apps/{appId}/packages/{packageId}/action/unpublish
METHOD: POST
名称 | 描述 | IN | 必选 |
---|---|---|---|
appId | 应用ID | path | yes |
packageId | 应用包ID | path | yes |
userId | 用户Id | request param | yes |
userName | 用户名 | request param | yes |
响应示例:
200 OK
Unpublish Success.
3. 评论¶
用户可以评论应用.
3.1 获取评论列表¶
根据应用ID获取应用的评论列表。
URI: /mec/appstore/v1/apps/{appId}/comments
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
响应示例:
200 OK
[
{
"commentId": 0,
"user": {
"userId": "string",
"userName": "string",
"permissions": [
{
"platform": "string",
"role": "string",
"pageIds": [
"string"
]
}
],
"company": "string",
"gender": "string",
"telephone": "string"
},
"appId": "string",
"body": "string",
"score": 0,
"commentTime": "string"
}
]
3.2 提交评论¶
用户根据应用ID提交应用评分及评论。
URI: /mec/appstore/v1/apps/{appId}/comments
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
yes |
userName |
应用名 |
request param |
yes |
appId |
应用ID |
path |
yes |
entity |
评论内容和打分 |
request body |
yes |
entity请求体示例:
{
"body": "string",
"score": 0
}
响应示例:
200 OK
"comments success."
3.3 获取评论列表-v2¶
根据应用ID分页获取应用的评论列表。
URI: /mec/appstore/v2/apps/{appId}/comments
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
path |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
响应示例:
200 OK
{
"results": [
{
"commentId": 0,
"user": {
"userId": "string",
"userName": "string",
"permissions": [
{
"platform": "string",
"role": "string",
"pageIds": [
"string"
]
}
],
"company": "string",
"gender": "string",
"telephone": "string"
},
"appId": "string",
"body": "string",
"score": 0,
"commentTime": "string"
}
],
"limit": 1,
"offset": 0,
"total": 1
}
4. 应用推送¶
用户可以推送应用到运营商或第三方。
4.1 查询可推送应用列表¶
查询可推送的应用列表。
URI: /mec/appstore/v1/packages/pushable
METHOD: GET
响应示例:
200 OK
[
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
]
4.2 获取推送应用包¶
根据packageId获取推送应用包。
URI: /mec/appstore/v1/packages/{packageId}/pushable
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
[
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
]
4.3 推送应用包¶
根据packageId推送应用包。
URI: /mec/appstore/v1/packages/{packageId}/action/push
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
path |
yes |
dto |
运营商列表 |
request param |
yes |
响应示例:
200 OK
[true, false, true]
4.4 下载推送应用包¶
根据packageId下载推送应用包。
URI: /mec/appstore/v1/packages/{packageId}/action/download-package
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
binary output.
4.5 下载推送应用图标¶
根据packageId下载推送应用图标。
URI: /mec/appstore/v1/packages/{packageId}/action/download-icon
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
path |
yes |
响应示例:
200 OK
binary output.
4.6 查询可推送应用列表-v2¶
分页查询可推送的应用列表。
URI: /mec/appstore/v2/packages/pushable
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
sortItem |
查询排序字段 |
request param |
no |
sortType |
查询排序方式,升序/降序 |
request param |
no |
appName |
应用名称 |
request param |
no |
响应示例:
200 OK
{
"results": [
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": 2,
"sourcePlatform": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string",
"deployMode": "string"
}
],
"limit": 1,
"offset": 0,
"total": 9
}
5. 仓库管理¶
对应用仓库的增删改查。
5.1 添加仓库¶
新增外部应用仓库。
URI: /mec/appstore/v1/appstores
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreName |
仓库名称 |
request param |
yes |
appStoreVersion |
仓库版本 |
request param |
yes |
company |
公司名称 |
request param |
yes |
url |
访问地址 |
request param |
yes |
schema |
访问协议 |
request param |
no |
appPushIntf |
推送方式 |
request param |
no |
appdTransId |
转换器id |
request param |
yes |
description |
描述 |
request param |
no |
响应示例:
200 OK
{
"appStoreId": "string",
"appStoreName": "string",
"appStoreVersion": "string",
"company": "string",
"url": "string",
"schema": "string",
"appPushIntf": "string",
"appdTransId": "string",
"description": "string",
"addedTime": "string",
"modifiedTime": "string"
}
5.2 删除仓库¶
删除外部应用仓库。
URI: /mec/appstore/v1/appstores/{appStoreId}
METHOD: DELETE
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreId |
仓库id |
path |
yes |
响应示例:
200 OK
delete success
5.3 修改仓库¶
修改外部应用仓库。
URI: /mec/appstore/v1/appstores/{appStoreId}
METHOD: PUT
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreId |
仓库名称 |
path |
yes |
appStoreName |
仓库名称 |
request param |
yes |
appStoreVersion |
仓库版本 |
request param |
yes |
company |
公司名称 |
request param |
yes |
url |
访问地址 |
request param |
yes |
schema |
访问协议 |
request param |
no |
appPushIntf |
推送方式 |
request param |
no |
appdTransId |
转换器id |
request param |
yes |
description |
描述 |
request param |
no |
响应示例:
200 OK
{
"appStoreId": "string",
"appStoreName": "string",
"appStoreVersion": "string",
"company": "string",
"url": "string",
"schema": "string",
"appPushIntf": "string",
"appdTransId": "string",
"description": "string",
"addedTime": "string",
"modifiedTime": "string"
}
5.4 查询仓库列表¶
查询外部应用仓库列表。
URI: /mec/appstore/v1/appstores
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreName |
仓库名称 |
request param |
yes |
company |
公司名称 |
request param |
yes |
响应示例:
200 OK
[
{
"appStoreId": "string",
"appStoreName": "string",
"appStoreVersion": "string",
"company": "string",
"url": "string",
"schema": "string",
"appPushIntf": "string",
"appdTransId": "string",
"description": "string",
"addedTime": "string",
"modifiedTime": "string"
}
]
5.5 查询仓库¶
查询外部应用仓库。
URI: /mec/appstore/v1/appstores/{appStoreId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreId |
仓库名称 |
path |
yes |
响应示例:
200 OK
{
"appStoreId": "string",
"appStoreName": "string",
"appStoreVersion": "string",
"company": "string",
"url": "string",
"schema": "string",
"appPushIntf": "string",
"appdTransId": "string",
"description": "string",
"addedTime": "string",
"modifiedTime": "string"
}
5.6 分页查询仓库列表-v2¶
分页查询外部应用仓库列表。
URI: /mec/appstore/v2/appstores
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appStoreName |
仓库名称 |
request param |
yes |
company |
公司名称 |
request param |
yes |
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
响应示例:
200 OK
{
"results": [
{
"appStoreId": "string",
"appStoreName": "string",
"appStoreVersion": "string",
"company": "string",
"url": "string",
"schema": "string",
"appPushIntf": "string",
"appdTransId": "string",
"description": "string",
"addedTime": "string",
"modifiedTime": "string"
}
],
"limit": 1,
"offset": 0,
"total": 2
}
6. 消息¶
消息包含应用推送、下载、通知等信息。
6.1 添加消息¶
新增一条消息。
URI: /mec/appstore/v1/messages
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
basicInfo |
基本信息 |
request param |
yes |
sourceAppStore |
源AppStore |
request param |
yes |
targetAppStore |
目标AppStore |
request param |
yes |
atpTestStatus |
ATP测试结果 |
request param |
yes |
atpTestTaskId |
ATP测试任务Id |
request param |
yes |
atpTestReportUrl |
ATP测试报告 |
request param |
yes |
packageDownloadUrl |
应用包下载地址 |
request param |
yes |
iconDownloadUrl |
应用图标下载地址 |
request param |
yes |
响应示例:
200 OK
add a message success
6.2 获取所有消息¶
根据消息类型获取消息。
URI: /mec/appstore/v1/messages
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
messageType |
消息类型 |
request param |
no |
响应示例:
200 OK
[
{
"messageId": "string",
"basicInfo": {
"name": "string",
"provider": "string",
"version": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string"
},
"messageType": "string",
"sourceAppStore": "string",
"targetAppStore": "string",
"time": "string",
"description": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"iconDownloadUrl": "string",
"readed": true
}
]
6.3 获取消息¶
根据message id获取消息。
URI: /mec/appstore/v1/messages/{messageId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
messageId |
消息id |
request param |
yes |
响应示例:
200 OK
{
"messageId": "string",
"basicInfo": {
"name": "string",
"provider": "string",
"version": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string"
},
"messageType": "string",
"sourceAppStore": "string",
"targetAppStore": "string",
"time": "string",
"description": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"iconDownloadUrl": "string",
"readed": true
}
6.4 删除消息¶
根据message id删除消息。
URI: /mec/appstore/v1/messages/{messageId}
METHOD: DELETE
名称 |
描述 |
IN |
必选 |
---|---|---|---|
messageId |
消息id |
request param |
yes |
响应示例:
200 OK
delete success
6.5 接收消息¶
根据message id下载app相关信息。
URI: /mec/appstore/v1/messages/{messageId}/action/download
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
messageId |
消息id |
request param |
yes |
request |
请求体 |
request param |
yes |
响应示例:
200 OK
success
6.6 更新状态¶
根据message id更新消息状态。
URI: /mec/appstore/v1/messages/{messageId}/action/readed
METHOD: PUT
名称 |
描述 |
IN |
必选 |
---|---|---|---|
messageId |
消息id |
request param |
yes |
响应示例:
200 OK
success
6.7 添加消息-v2¶
新增一条消息。
URI: /mec/appstore/v2/messages
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
basicInfo |
基本信息 |
request param |
yes |
sourceAppStore |
源AppStore |
request param |
yes |
targetAppStore |
目标AppStore |
request param |
yes |
atpTestStatus |
ATP测试结果 |
request param |
yes |
atpTestTaskId |
ATP测试任务Id |
request param |
yes |
atpTestReportUrl |
ATP测试报告 |
request param |
yes |
packageDownloadUrl |
应用包下载地址 |
request param |
yes |
iconDownloadUrl |
应用图标下载地址 |
request param |
yes |
响应示例:
200 OK
{
"data": "add a message success",
"retCode": 0,
"params": "[string]",
"message": "string"
}
6.8 获取消息列表-v2¶
根据查询条件分页获取消息。
URI: /mec/appstore/v2/messages/action/query
METHOD: POST
请求参数:
名称 |
描述 |
IN |
必选 |
---|---|---|---|
QueryMessageReqDto |
查询消息条件 |
request body |
yes |
QueryMessageReqDto
字段名 |
描述 |
字段类型 |
必选 |
---|---|---|---|
messageType |
消息类型 |
String |
no |
limit |
分页查询每页查询数量[1,500] |
int |
yes |
offset |
分页查询起始页,从0开始 |
int |
yes |
sortItem |
查询排序字段 |
String |
no |
sortType |
查询排序方式,升序/降序 |
String |
no |
appName |
应用名称 |
String |
no |
timeFlag |
消息时间标志,枚举值有:今天、一周内、一月内、更早 |
enum |
no |
allMessage |
是否获取所有消息 |
boolean |
yes |
readable |
不获取所有消息时,获取已读/未读消息 |
boolean |
yes |
响应示例:
200 OK
{
"results": [
{
"messageId": "string",
"basicInfo": {
"name": "string",
"provider": "string",
"version": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string"
},
"messageType": "string",
"sourceAppStore": "string",
"targetAppStore": "string",
"time": "string",
"description": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"iconDownloadUrl": "string",
"readed": true
}
],
"limit": 8,
"offset": 0,
"total": 2
}
7. 应用拉取¶
用户可以从运营商或第三方仓库拉取应用。
7.1 查询可拉取应用列表¶
查询可拉取的应用列表。
URI: /mec/appstore/v1/packages/pullable
METHOD: GET
响应示例:
200 OK
[
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
]
7.2 获取外部应用仓库可拉取应用列表¶
根据platfromId获取外部仓库可拉取应用列表。
URI: /mec/appstore/v1/packages/{platformId}/pullable
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
platformId |
外部应用仓库ID |
path |
yes |
响应示例:
200 OK
[
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
]
7.3 拉取应用包¶
根据packageId拉取应用包。
URI: /mec/appstore/v1/packages/{packageId}/action/pull
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
path |
yes |
PullAppReqDto |
拉取请求结构 |
request body |
yes |
PullAppReqDto:
字段 |
描述 |
类型 |
必选 |
---|---|---|---|
sourceStoreId |
源仓库平台ID |
string |
yes |
sourceStoreName |
源仓库平台名称 |
string |
yes |
name |
应用名称 |
string |
yes |
provider |
应用供应商 |
string |
yes |
version |
应用版本 |
string |
yes |
atpTestStatus |
应用测试状态 |
string |
yes |
affinity |
应用架构 |
string |
yes |
shortDesc |
应用描述 |
string |
yes |
showType |
应用显示类型 |
string |
yes |
industry |
应用行业 |
string |
yes |
type |
应用类型 |
string |
yes |
userId |
用户ID |
string |
yes |
userName |
用户名称 |
string |
yes |
响应示例:
200 OK
true
7.4 分页查询可拉取应用列表-v2¶
分页查询可拉取的应用列表。
URI: /mec/appstore/v2/packages/pullable
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
sortItem |
查询排序字段 |
request param |
no |
sortType |
查询排序方式,升序/降序 |
request param |
no |
appName |
应用名称 |
request param |
no |
响应示例:
200 OK
{
"results": [
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
],
"limit": 1,
"offset": 0,
"total": 2
}
7.5 获取外部应用仓库可拉取应用列表-v2¶
根据platfromId获取外部仓库可拉取应用列表。
URI: /mec/appstore/v2/packages/{platfromId}/pullable
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
platformId |
外部应用仓库ID |
path |
yes |
limit |
分页查询每页查询数量[1,500] |
request param |
yes |
offset |
分页查询起始页,从0开始 |
request param |
yes |
sortItem |
查询排序字段 |
request param |
no |
sortType |
查询排序方式,升序/降序 |
request param |
no |
appName |
应用名称 |
request param |
no |
响应示例:
200 OK
{
"results": [
{
"appId": "string",
"packageId": "string",
"name": "string",
"provider": "string",
"version": "string",
"atpTestStatus": "string",
"atpTestTaskId": "string",
"atpTestReportUrl": "string",
"latestPushTime": "string",
"pushTimes": "string",
"targetPlatform": "string",
"affinity": "string",
"shortDesc": "string",
"industry": "string",
"type": "string",
"createTime": "string"
}
],
"limit": 1,
"offset": 0,
"total": 2
}
8. 沙箱管理¶
管理沙箱环境。
8.1 查询沙箱环境列表¶
查询沙箱环境列表。
URI: /mec/appstore/v1/system/hosts
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
userId |
用户ID |
request param |
no |
name |
沙箱环境名称 |
request param |
no |
ip |
沙箱环境ip |
request param |
no |
响应示例:
200 OK
[
{
"hostId": "string",
"name": "string",
"address": "string",
"architecture": "string",
"status": "NORMAL",
"lcmIp": "string",
"mecHost": "string",
"protocol": "string",
"port": 0,
"os": "string",
"parameter":"string",
"portRangeMin": 0,
"portRangeMax": 0
}
]
8.2 查询沙箱环境¶
根据hostId查询沙箱环境。
URI: /mec/appstore/v1/system/hosts/{hostId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
hostId |
沙箱环境id |
path |
yes |
响应示例:
200 OK
{
"hostId": "string",
"name": "string",
"address": "string",
"architecture": "string",
"status": "NORMAL",
"lcmIp": "string",
"mecHost": "string",
"protocol": "string",
"port": 0,
"os": "string",
"parameter":"string",
"portRangeMin": 0,
"portRangeMax": 0
}
8.3 添加沙箱环境¶
新增一个沙箱环境。
URI: /mec/appstore/v1/system/hosts
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
MepHost |
沙箱管理请求结构体 |
request body |
yes |
MepHost
{
"name": "string",
"address": "string",
"architecture": "string",
"status": "NORMAL",
"lcmIp": "string",
"mecHost": "string",
"protocol": "string",
"port": 0,
"os": "string",
"parameter":"string",
"portRangeMin": 0,
"portRangeMax": 0
}
响应示例:
200 OK
true
8.4 删除沙箱环境¶
根据hostId删除沙箱环境。
URI: /mec/appstore/v1/system/hosts/{hostId}
METHOD: DELETE
名称 |
描述 |
IN |
必选 |
---|---|---|---|
hostId |
沙箱环境id |
path |
yes |
响应示例:
200 OK
true
8.5 修改沙箱环境¶
根据hostId修改沙箱环境。
URI: /mec/appstore/v1/system/hosts/{hostId}
METHOD: PUT
名称 |
描述 |
IN |
必选 |
---|---|---|---|
hostId |
沙箱环境id |
path |
yes |
MepHost |
沙箱管理请求结构体 |
request body |
yes |
MepHost
{
"hostId": "string",
"name": "string",
"address": "string",
:se "architecture": "string",
"status": "NORMAL",
"lcmIp": "string",
"mecHost": "string",
"protocol": "string",
"port": 0,
"os": "string",
"parameter":"string",
"portRangeMin": 0,
"portRangeMax": 0
}
响应示例:
200 OK
true
8.6 上传沙箱环境配置文件¶
上传沙箱环境配置文件。
URI: /mec/appstore/v1/system/host/files
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
uploadFile |
上传文件 |
request body form |
yes |
userId |
用户ID |
request param |
yes |
响应示例:
200 OK
{
"fileId": "string",
"fileName": "string",
"url": "string",
"userId": "string",
"uploadDate": "2020-09-14T09:03:17.084Z",
"filePath": "string",
"temp": false
}
9. 应用在线体验¶
可以在线体验应用
9.1 实例化应用¶
实例化应用,开始应用在线体验。
URI: /mec/appstore/v1/experience/deploy
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
request param |
no |
packageId |
应用包ID |
request param |
no |
userId |
用户ID |
request param |
no |
name |
沙箱环境名称 |
request param |
no |
ip |
沙箱环境ip |
request param |
no |
响应示例:
200 OK
{
"data": "[{"serviceName":"testApp","serviceName":"30258","mecHost":"127.0.0.1"}]",
"retCode": 0,
"params": "[string]",
"message": "string"
}
9.2 释放资源¶
体验完成,释放资源。
URI: /mec/appstore/v1/experience/clean
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
request param |
yes |
userId |
用户ID |
request param |
no |
name |
沙箱环境名称 |
request param |
no |
ip |
沙箱环境ip |
request param |
no |
响应示例:
200 OK
true
9.3 获取应用工作状态¶
获取应用工作状态。
URI: /mec/appstore/v1/experience/container/workStatus
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
packageId |
应用包ID |
request param |
no |
userId |
用户ID |
request param |
no |
name |
沙箱环境名称 |
request param |
no |
ip |
沙箱环境ip |
request param |
no |
响应示例:
200 OK
{
"data": "[{"serviceName":"testApp","serviceName":"30258","mecHost":"127.0.0.1"}]",
"retCode": 0,
"params": "[string]",
"message": "string"
}
10. 应用变现¶
应用发布时可对应用定价,实现应用变现。
10.1 订购应用¶
创建订单。
URI: /mec/appstore/v1/orders
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
APPID |
request body |
是 |
appPackageId |
APP包ID |
request body |
是 |
appName |
应用名称 |
request body |
是 |
mecHostIp |
边缘节点IP |
request body |
是 |
mecHostCity |
边缘节点位置 |
request body |
是 |
响应示例:
response 200 OK
{
"data": {
"orderId": "",
"orderNum": "",
},
"retCode": 0,
"params": ["", ""],
"message": ""
}
10.2 退订应用¶
对订单进行退订操作。
URI: /mec/appstore/v1/orders/{orderId}/deactivation
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
orderId |
订单ID |
path param |
是 |
响应示例:
response 200 OK
{
"data": null,
"retCode": 0,
"params": ["", ""],
"message": ""
}
10.3 激活订单¶
对订单进行激活操作。
URI: /mec/appstore/v1/orders/{orderId}/activation
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
orderId |
订单ID |
path param |
是 |
响应示例:
response 200 OK
{
"data": null,
"retCode": 0,
"params": ["", ""],
"message": ""
}
10.4 查询订单列表¶
获取订单列表。
URI: /mec/appstore/v1/orders/list
METHOD: POST
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用ID |
request body |
否 |
orderNum |
订单编号 |
request body |
否 |
status |
订单状态 |
request body |
否 |
orderTimeBegin |
下单时间范围的起始时间 |
request body |
否 |
orderTimeEnd |
下单时间范围的结束时间 |
request body |
否 |
QueryCtrlDto |
查询条件 |
request body |
是 |
QueryCtrlDto
字段名 |
描述 |
字段类型 |
必选 |
---|---|---|---|
limit |
分页查询每页查询数量[1,500] |
int |
yes |
offset |
分页查询起始页,从0开始 |
int |
yes |
sortItem |
查询排序字段 |
String |
no |
sortType |
查询排序方式升序/降序 |
String |
no |
响应示例:
response 200 OK
{
"results": [
{
"orderId": "",
"orderNum": "",
"userId": "",
"userName": "",
"appId": "",
"appName": "",
"orderTime": "",
"operateTime": "",
"status": "",
"mecHostIp": "",
"mecHostCity": "",
"detail": ""
},
{...}
],
"offset": 0,
"limit": 20,
"total": 100
}
10.5 查询边缘节点列表¶
获取边缘节点信息.
URI: /mec/appstore/v1/mechosts?appId={appId}&packageId={packageId}
METHOD: GET
名称 |
描述 |
IN |
必选 |
---|---|---|---|
appId |
应用id |
request param |
否 |
packageId |
应用包id |
request param |
否 |
响应示例:
response 200 OK
{
"data": [
{
"mechostIp": "",
"mechostName": "",
"mechostCity": "",
"vim": "",
"affinity": ""
}
],
"retCode": 0,
"params": ["", ""],
"message": ""
}