Http协议转gRPC协议插件
插件信息
| 名称 | 字段 | 属性 |
|---|---|---|
| http协议转gRPC协议 | http_to_grpc | 协议转换 |
功能描述
将客户端 HTTP请求 转换成 gRPC请求 转发给上游服务,并将上游服务的 gRPC响应 转换成 HTTP响应 转发给客户端。该插件仅当路由驱动为http时生效。
使用方法
- 全局插件创建http_to_grpc插件

- 创建http路由时添加该插件

配置说明
| 参数名 | 值类型 | 是否必填 | 值可能性 | 默认值 | 说明 |
|---|---|---|---|---|---|
| service | string | 否 | Service.Hello | 服务名称,gRPC调用服务名 | |
| method | string | 否 | Hello | 方法名称,gRPC调用方法名 | |
| authority | string | 否 | 虚拟主机域名(Authority) | ||
| format | string | 是 | json | 请求数据格式 | |
| reflect | bool | 是 | false | 反射,若gRPC服务器开启了反射,配置时可设置为true | |
| protobuf_id | string | 否 | protobuf编码器ID,若reflect为false时,该值必填 | ||
| header | map[string]string | 否 | {"name":"apinto"} | 额外头部,转发请求时,会将其拼接到转发的请求头部中一并转发 |
- 当服务名称不填时,则默认使用 HTTP请求路径的第一个
/和第二个/之间的值作为服务名 - 当方法名称不填时,则默认使用 HTTP请求路径的第二个
/和第三个/之间的值作为服务名 - 即,若HTTP请求路径上
/Service.Hello/Hello,则此时服务名称为Service.Hello,方法名称为Hello
