多语言Http客户端
说明#
- 本文主要讲解其他语言的http服务如何接入网关。
- 接入网关需要先获取 token, 然后可以根据需求调用注册服务或元数据接口
获取 token#
- 请求方式 - GET
- 请求路径 - http://{shenyu-admin}/platform/login
- 其中 shenyu-admin表示为admin后台管理系统的ip + port
 
- 请求参数 - query参数,账号密码为 admin 服务的用户名和密码- 字段 - 类型 - 是否必填 - 描述 - userName - String - 是 - 用户名 - password - String - 是 - 密码 
 
- 返回数据 - 字段 - 类型 - 描述 - code - Integer - 返回码 - message - String - 返回信息 - data - Object - 返回对象 - id - Integer - 用户id - userName - String - 账号 - role - Integer - 角色 - enabled - Boolean - 是否启用 - dateCreated - String - 创建时间 - dateUpdated - String - 更新时间 - token - String - token - expiredTime - Long - 超时时间,单位:毫秒 - 示例 - { "code": 200, "message": "login dashboard user success", "data": { "id": "1", "userName": "admin", "role": 1, "enabled": true, "dateCreated": "2022-09-07 22:08:23", "dateUpdated": "2022-09-07 22:08:23", "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTmFtZSI6ImFkbWluIiwiZXhwIjoxNjYyNjQ2MzU5fQ.WBXBgCcGsnnC00pRbDOtqCVoAaZr8MKH6WE6kY-NGaI", "expiredTime": 86400000 }}
注册服务#
- 请求方式 - POST
- 请求路径 - http://{shenyu-admin}/shenyu-client/register-uri
- 其中 shenyu-admin表示为admin后台管理系统的ip + port
 
- 请求参数 - Header参数- contentType: application/json
- X-Access-Token: {token},token 为调用登陆接口获取的 token
 
- Body参数,- json类型- 字段 - 类型 - 是否必填 - 描述 - protocol - String - 是 - 协议类型 - appName - String - 是 - 应用名称 - contextPath - String - 是 - 项目路径 - rpcType - String - 是 - rpc类型,支持的类型参考 RpcTypeEnum - host - String - 是 - 客户端IP - port - Integer - 是 - 客户端端口 - eventType - String - 是 - 事件类型,支持的类型参考 EventType - 示例 - { "protocol": "http", "appName": "app", "contextPath": "/test", "rpcType": "http", "host": "127.0.0.1", "port": "8080", "eventType": "REGISTER"}
 
- 返回数据 - 注册成功会返回 - success
注册元数据#
- 请求方式 - POST
- 请求路径 - http://{shenyu-admin}/shenyu-client/register-metadata
- 其中 shenyu-admin表示为admin后台管理系统的ip + port
 
- 请求参数 - Header参数- contentType: application/json
- X-Access-Token: {token},token 为调用登陆接口获取的 token
 
- Body参数,- json类型- 字段 - 类型 - 是否必填 - 描述 - appName - String - 是 - 应用名称 - contextPath - String - 是 - 项目路径 - path - String - 是 - 路径 - pathDesc - String - 是 - 路径描述 - rpcType - String - 是 - rpc类型,支持的类型参考 RpcTypeEnum - serviceName - String - 是 - 服务名称 - methodName - String - 是 - 方法名称 - ruleName - String - 是 - 规则名称 - parameterTypes - String - 是 - 参数类型 - rpcExt - String - 是 - Rpc拓展参数 - enabled - Boolean - 否 - 状态 - host - String - 是 - 服务 IP - port - Integer - 是 - 服务端口 - pluginNames - List - 是 - 插件名称列表 - registerMetaData - Boolean - 否 - 是否注册元数据 - 示例 - { "appName": "app", "contextPath": "/", "path": "/test", "rpcType": "http", "serviceName": "测试服务", "parameterTypes": "java.lang.String", "pathDesc": "测试路径", "methodName": "测试方法", "ruleName": "测试规则", "rpcExt": "{\"loadbalance\":\"hash\",\"retries\":3,\"timeout\":-1}", "enabled": true, "host": "127.0.0.1", "port": 8080, "pluginNames": [], "registerMetaData": true}
 
- 返回数据 - 注册成功会返回 - success