HTTP转Dubbo 配置说明
本文介绍了envoy.extensions.filters.http.http_dubbo_transcoder.v3.HttpDubboTranscoder这个Filter的相关配置项。
HttpDubboTranscoder
字段 | 类型 | 说明 | 值 |
---|---|---|---|
url_unescape_spec | enum | URL unescaping policy | 可选值: - ALL_CHARACTERS_EXCEPT_RESERVED - ALL_CHARACTERS_EXCEPT_SLASH - ALL_CHARACTERS |
request_validation_options | RequestValidateOptions | 请求验证选项 | |
services_mapping | list of DubboServiceMapping | 每一项对应了一条映射规则 |
HttpDubboTranscoder.RequestValidateOptions
字段 | 类型 | 说明 |
---|---|---|
reject_unknown_query_parameters | bool | 对于无法成功映射query parameters的请求是否直接拒绝 |
reject_unknown_method | bool | 对于无法映射为dubbo服务的请求是否直接拒绝 |
HttpDubboTranscoder.DubboServiceMapping
字段 | 类型 | 说明 | 值 |
---|---|---|---|
name | string | dubbo服务名 | 例如:"com.alibaba.nacos.example.dubbo.service.DemoService" |
version | string | dubbo服务的版本 | 例如:"1.0.0" |
group | string | dubbo服务的分组 | 例如:"dev" |
method_mapping | list of DubboMethodMapping | 每一项对应了指定dubbo服务中的某个方法的映射规则 |
HttpDubboTranscoder.DubboMethodMapping
字段 | 类型 | 说明 | 值 |
---|---|---|---|
name | string | 方法名 | 例:"sayName" |
path_matcher | PathMatcher | 方法匹配规则 | |
parameter_mapping | lis of ParameterMapping | 每一项对应一个参数映射规则 | |
passthrough_setting | PassthroughSetting | 指定Header透传规则 |
HttpDubboTranscoder.DubboMethodMapping.PathMatcher
字段 | 类型 | 说明 | 值 |
---|---|---|---|
match_pattern | string | 方法的匹配路径|例如:"/dubbo/hello" | |
match_http_method_spec | enum | 方法匹配的HTTP Method | 可选值: -ALL_GET - ALL_POST - ALL_PUT - ALL_DELETE - ALL_PATCH |
HttpDubboTranscoder.DubboMethodMapping.ParameterMapping
字段 | 类型 | 说明 | 值 |
---|---|---|---|
extract_key_spec | enum | 参数提取位置 | 可选值: - ALL_QUERY_PARAMETER - ALL_HEADER - ALL_PATH - ALL_BODY |
extract_key | string | 参数提取的key | 例:my_param |
mapping_type | string | 参数在dubbo服务中的类型 | 例:"java.lang.String" |
HttpDubboTranscoder.DubboMethodMapping.PassthroughSetting
配置HTTP Header透传规则,被透传的Header会被放在Dubbo调用的attachment中传给dubbo服务
注:Header的透传规则,此项配置为one of类型,下面两个字段选其一
字段 | 类型 | 说明 |
---|---|---|
passthrough_all_headers | bool | 透传所有Header |
passthrough_headers | list of string | 透传指定Header,每一项指定了Header中的一个key |