开发者指导

EdgeGallery业务开发指导

北向接口调用指导

EdgeGallery支持第三方业务系统通过北向接口网关调用EdgeGallery的业务接口。调用流程如下图所示:

北向接口调用流程

北向接口调用endpoint

目前由WebsiteGateway来承担北向接口网关的职责,具体是由通过WebsiteGateway运行起来的各业务平台前端来承担。 所以北向接口调用的endpoint可以使用任意一个业务平台前端的endpoint。如下:

平台

endpoint

说明

EdgeGallery融合前端

https://{PORTAL_IP}:30095

推荐使用该endpoint

AppStore平台前端

https://{PORTAL_IP}:30091

Developer平台前端

https://{PORTAL_IP}:30092

Mecm平台前端

https://{PORTAL_IP}:30093

Atp平台前端

https://{PORTAL_IP}:30094

获取XSRF-TOKEN

在调用获取AccessToken的接口和各平台的业务接口之前,需要先获取到XSRF-TOKEN。

Resource URI: /
Method: GET

Example request:

GET https://x.x.x.x:30095/

Example response:

response 200 OK
响应的Cookie中即包含XSRF-TOKEN,请获取它。
后续所有的接口调用中都需要通过请求头X-XSRF-TOKEN传递。

获取AccessToken

Resource URI: /mec-usermgmt/v1/accesstoken
Method: POST

Name

Definition

Type

Required

Describe

X-XSRF-TOKEN

XSRF-TOKEN

header

userFlag

登录凭证(用户名/邮箱/手机号)

body

password

密码

body

Example request:

https://x.x.x.x:30095/mec-usermgmt/v1/accesstoken -H "X-XSRF-TOKEN: xxxx"
{
  "userFlag": "",
  "password": ""
}

Example response:

response 200 OK
{
  "userId": "xxxxx",
  "accessToken": "eyJhbGciOiJSUzI1NiIsInR5xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

后续所有的业务接口调用都需要通过请求头X-ACCESS-TOKEN传递这里的accessToken值。

response 400 Bad Request
{
  "code": 70xxx,
  "message": ""
}

response 401 Unauthorized
{
  "code": 70xxx,
  "message": ""
}

调用业务接口

各平台提供的业务接口,参考各模块的接口文档。

北向业务接口URL格式

通过北向接口调用各平台的业务接口时,URL按照如下格式调用:

https://x.x.x.x:30095/{urlPrefix}/{业务接口自身的URL}

其中urlPrefix是各平台在网关中定义的路由前缀,定义如下表所示:

平台

urlPrefix

AppStore

mec-appstore

Developer

mec-developer

Mecm-Inventory

mecm-inventory

Mecm-APP

mecm-appo

Mecm-APM

mecm-apm

ATP

mec-atp

北向业务接口请求头

通过北向接口调用各平台的业务接口时,需要传递如下请求头:

Name Definition
X-XSRF-TOKEN XSRF-TOKEN
X-ACCESS-TOKEN ACCESS-TOKEN

北向业务接口调用示例

AppStore平台提供了获取应用列表的接口: GET /mec/appstore/v1/apps

北向调用:

GET https://x.x.x.x:30095/mec-appstore/mec/appstore/v1/apps -H "X-XSRF-TOKEN: xxxx" -H "X-ACCESS-TOKEN: xxxx"

第三方IAM对接开发指导

EdgeGallery支持对接使用第三方IAM帐号系统。

在部署EdgeGallery时请参考:离线安装指导中的说明开启第三方IAM使能开关。

对于第三方IAM帐号系统,需要实现如下接口:

接口名称

URL

Method

Request

Response

Response Status

登录

/iam/users/login

POST

{
“userFlag”: “xxxx”,//用户登录凭证(用户名/邮箱地址)
“password”: “xxx”//登录密码
}

{
“userId”: “”, //用户ID
“userName”: “”, //用户名
“mailAddress”: “”, //邮箱地址(可选)
“userRole”: “”, //用户角色(ADMIN:管理员 TENANT:租户)
}

200:登录成功,返回用户信息
401:认证失败