公域接口
网关 Gateway 内置的公域接口说明,用于提供给外部系统访问
用户登录
全局用户登录获取登录信息,包括 accessToken、refreshToken、用户信息等,需要有效的临时 Token 访问接口
事件参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| username | string | 是 | 用户名/手机/邮箱 |
| encryptPass | string | 是 | sha1 加密后的密码 |
请求示例:
POST /event_gateway
{
"id": "01JRCXYE12PXWWCAXJH06B7GRF",
"project": "event",
"version": "0.1.0",
"context": "gateway",
"entity": "user",
"event": "login",
"params": "{\"username\":\"xx@xx.com\",\"encryptPass\":\"xx\"}",
"accessToken": "t.xx.xx",
"source": "web_api",
"sign": "ce934e4fb445d1dfda711e1c82b43e66703dec10",
"createdAt": 1744190781474
}
响应示例:
{
"code": "ok",
"createdAt": 1744191511367,
"message": "登录成功",
"list": [
{
"name": "root",
"accessToken": "t.xx.xx",
"refreshToken": "t.xx.xx",
"phone": "xx",
"gender": "male",
"systemRole": 2147483647,
"createdAt": 1725187381459,
"email": "xx",
"ucode": "FAC3"
}
],
"total": 1,
"size": 1,
"page": 1
}
JWT 续期
需要有效的 accessToken 访问接口
事件参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| refreshToken | string | 否 | 页码,默认 1 |
请求示例:
POST /event_gateway
{
"id": "01JRAJ6QDJTVF85YXYPB1J77PH",
"project": "event",
"version": "0.1.0",
"context": "gateway",
"entity": "user",
"event": "renewal",
"params": "{\"refreshToken\":\"t.xx.xx\"}",
"accessToken": "t.xx.xx",
"source": "web_api",
"sign": "304bdce71daebec03ad9318e8a58d2ad1120e4d6",
"createdAt": 1744111361458
}
响应示例:
{
"code": "ok",
"createdAt": 1744111361485,
"message": "Token续期成功",
"list": [
{
"accessToken": "t.xx.xx"
}
],
"total": 1,
"size": 1,
"page": 1
}
事件路由
这个接口的事件根据开发后台的实体事件配置传参并进行权限预校验,然后返回对应的 worker 地址
事件参数: 根据开发后台的实体事件配置传参
请求示例:
POST /event_gateway
{
"id": "xx",
"project": "mpnote",
"version": "0.1.0",
"context": "user",
"entity": "user_info",
"event": "update",
"params": "{\"id\":\"xx\",\"nickname\":\"TestUser_001\"}",
"accessToken": "t.xx.xx",
"source": "web_api",
"sign": "xx",
"createdAt": 1744299626377
}
响应示例:
{
"code": "worker_endpoint",
"createdAt": 1744299626394,
"message": "worker地址",
"list": [
{
"timeout": 60,
"publicEndpoint": "127.0.0.1:20001"
}
],
"total": 1,
"size": 1,
"page": 1
}