开发者指导¶
北向接口调用指导¶
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
{
"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-APPO | 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:认证失败 |