Documentation ¶
Index ¶
- type HeaderMatcher
- func (*HeaderMatcher) Descriptor() ([]byte, []int)
- func (this *HeaderMatcher) Equal(that interface{}) bool
- func (m *HeaderMatcher) GetInvertMatch() bool
- func (m *HeaderMatcher) GetName() string
- func (m *HeaderMatcher) GetRegex() bool
- func (m *HeaderMatcher) GetValue() string
- func (m *HeaderMatcher) Hash(hasher hash.Hash64) (uint64, error)
- func (*HeaderMatcher) ProtoMessage()
- func (m *HeaderMatcher) Reset()
- func (m *HeaderMatcher) String() string
- func (m *HeaderMatcher) XXX_DiscardUnknown()
- func (m *HeaderMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *HeaderMatcher) XXX_Merge(src proto.Message)
- func (m *HeaderMatcher) XXX_Size() int
- func (m *HeaderMatcher) XXX_Unmarshal(b []byte) error
- type Matcher
- func (*Matcher) Descriptor() ([]byte, []int)
- func (this *Matcher) Equal(that interface{}) bool
- func (m *Matcher) GetExact() string
- func (m *Matcher) GetHeaders() []*HeaderMatcher
- func (m *Matcher) GetMethods() []string
- func (m *Matcher) GetPathSpecifier() isMatcher_PathSpecifier
- func (m *Matcher) GetPrefix() string
- func (m *Matcher) GetQueryParameters() []*QueryParameterMatcher
- func (m *Matcher) GetRegex() string
- func (m *Matcher) Hash(hasher hash.Hash64) (uint64, error)
- func (*Matcher) ProtoMessage()
- func (m *Matcher) Reset()
- func (m *Matcher) String() string
- func (m *Matcher) XXX_DiscardUnknown()
- func (m *Matcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Matcher) XXX_Merge(src proto.Message)
- func (*Matcher) XXX_OneofWrappers() []interface{}
- func (m *Matcher) XXX_Size() int
- func (m *Matcher) XXX_Unmarshal(b []byte) error
- type Matcher_Exact
- type Matcher_Prefix
- type Matcher_Regex
- type QueryParameterMatcher
- func (*QueryParameterMatcher) Descriptor() ([]byte, []int)
- func (this *QueryParameterMatcher) Equal(that interface{}) bool
- func (m *QueryParameterMatcher) GetName() string
- func (m *QueryParameterMatcher) GetRegex() bool
- func (m *QueryParameterMatcher) GetValue() string
- func (m *QueryParameterMatcher) Hash(hasher hash.Hash64) (uint64, error)
- func (*QueryParameterMatcher) ProtoMessage()
- func (m *QueryParameterMatcher) Reset()
- func (m *QueryParameterMatcher) String() string
- func (m *QueryParameterMatcher) XXX_DiscardUnknown()
- func (m *QueryParameterMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *QueryParameterMatcher) XXX_Merge(src proto.Message)
- func (m *QueryParameterMatcher) XXX_Size() int
- func (m *QueryParameterMatcher) XXX_Unmarshal(b []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HeaderMatcher ¶
type HeaderMatcher struct { // Specifies the name of the header in the request. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Specifies the value of the header. If the value is absent a request that // has the name header will match, regardless of the header’s value. Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // Specifies whether the header value should be treated as regex or not. Regex bool `protobuf:"varint,3,opt,name=regex,proto3" json:"regex,omitempty"` // If set to true, the result of the match will be inverted. Defaults to false. // // Examples: // * name=foo, invert_match=true: matches if no header named `foo` is present // * name=foo, value=bar, invert_match=true: matches if no header named `foo` with value `bar` is present // * name=foo, value=“\d{3}“, regex=true, invert_match=true: matches if no header named `foo` with a value consisting of three integers is present InvertMatch bool `protobuf:"varint,4,opt,name=invert_match,json=invertMatch,proto3" json:"invert_match,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Internally, Gloo always uses the HTTP/2 *:authority* header to represent the HTTP/1 *Host* header. Thus, if attempting to match on *Host*, match on *:authority* instead.
func (*HeaderMatcher) Descriptor ¶
func (*HeaderMatcher) Descriptor() ([]byte, []int)
func (*HeaderMatcher) Equal ¶
func (this *HeaderMatcher) Equal(that interface{}) bool
func (*HeaderMatcher) GetInvertMatch ¶
func (m *HeaderMatcher) GetInvertMatch() bool
func (*HeaderMatcher) GetName ¶
func (m *HeaderMatcher) GetName() string
func (*HeaderMatcher) GetRegex ¶
func (m *HeaderMatcher) GetRegex() bool
func (*HeaderMatcher) GetValue ¶
func (m *HeaderMatcher) GetValue() string
func (*HeaderMatcher) Hash ¶ added in v1.2.13
func (m *HeaderMatcher) Hash(hasher hash.Hash64) (uint64, error)
Hash function
func (*HeaderMatcher) ProtoMessage ¶
func (*HeaderMatcher) ProtoMessage()
func (*HeaderMatcher) Reset ¶
func (m *HeaderMatcher) Reset()
func (*HeaderMatcher) String ¶
func (m *HeaderMatcher) String() string
func (*HeaderMatcher) XXX_DiscardUnknown ¶
func (m *HeaderMatcher) XXX_DiscardUnknown()
func (*HeaderMatcher) XXX_Marshal ¶
func (m *HeaderMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*HeaderMatcher) XXX_Merge ¶
func (m *HeaderMatcher) XXX_Merge(src proto.Message)
func (*HeaderMatcher) XXX_Size ¶
func (m *HeaderMatcher) XXX_Size() int
func (*HeaderMatcher) XXX_Unmarshal ¶
func (m *HeaderMatcher) XXX_Unmarshal(b []byte) error
type Matcher ¶
type Matcher struct { // Types that are valid to be assigned to PathSpecifier: // *Matcher_Prefix // *Matcher_Exact // *Matcher_Regex PathSpecifier isMatcher_PathSpecifier `protobuf_oneof:"path_specifier"` // Specifies a set of headers that the route should match on. The router will // check the request’s headers against all the specified headers in the route // config. A match will happen if all the headers in the route are present in // the request with the same values (or based on presence if the value field // is not in the config). Headers []*HeaderMatcher `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty"` // Specifies a set of URL query parameters on which the route should // match. The router will check the query string from the *path* header // against all the specified query parameters. If the number of specified // query parameters is nonzero, they all must match the *path* header's // query string for a match to occur. QueryParameters []*QueryParameterMatcher `protobuf:"bytes,7,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"` // HTTP Method/Verb(s) to match on. If none specified, the matcher will ignore the HTTP Method Methods []string `protobuf:"bytes,8,rep,name=methods,proto3" json:"methods,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Parameters for matching routes to requests received by a Gloo-managed proxy
func (*Matcher) Descriptor ¶
func (*Matcher) GetHeaders ¶
func (m *Matcher) GetHeaders() []*HeaderMatcher
func (*Matcher) GetMethods ¶
func (*Matcher) GetPathSpecifier ¶
func (m *Matcher) GetPathSpecifier() isMatcher_PathSpecifier
func (*Matcher) GetQueryParameters ¶
func (m *Matcher) GetQueryParameters() []*QueryParameterMatcher
func (*Matcher) ProtoMessage ¶
func (*Matcher) ProtoMessage()
func (*Matcher) XXX_DiscardUnknown ¶
func (m *Matcher) XXX_DiscardUnknown()
func (*Matcher) XXX_Marshal ¶
func (*Matcher) XXX_OneofWrappers ¶
func (*Matcher) XXX_OneofWrappers() []interface{}
XXX_OneofWrappers is for the internal use of the proto package.
func (*Matcher) XXX_Unmarshal ¶
type Matcher_Exact ¶
type Matcher_Exact struct {
Exact string `protobuf:"bytes,2,opt,name=exact,proto3,oneof" json:"exact,omitempty"`
}
func (*Matcher_Exact) Equal ¶
func (this *Matcher_Exact) Equal(that interface{}) bool
type Matcher_Prefix ¶
type Matcher_Prefix struct {
Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3,oneof" json:"prefix,omitempty"`
}
func (*Matcher_Prefix) Equal ¶
func (this *Matcher_Prefix) Equal(that interface{}) bool
type Matcher_Regex ¶
type Matcher_Regex struct {
Regex string `protobuf:"bytes,3,opt,name=regex,proto3,oneof" json:"regex,omitempty"`
}
func (*Matcher_Regex) Equal ¶
func (this *Matcher_Regex) Equal(that interface{}) bool
type QueryParameterMatcher ¶
type QueryParameterMatcher struct { // Specifies the name of a key that must be present in the requested // *path*'s query string. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Specifies the value of the key. If the value is absent, a request // that contains the key in its query string will match, whether the // key appears with a value (e.g., "?debug=true") or not (e.g., "?debug") Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // Specifies whether the query parameter value is a regular expression. // Defaults to false. The entire query parameter value (i.e., the part to // the right of the equals sign in "key=value") must match the regex. // E.g., the regex "\d+$" will match "123" but not "a123" or "123a". Regex bool `protobuf:"varint,3,opt,name=regex,proto3" json:"regex,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Query parameter matching treats the query string of a request's :path header as an ampersand-separated list of keys and/or key=value elements.
func (*QueryParameterMatcher) Descriptor ¶
func (*QueryParameterMatcher) Descriptor() ([]byte, []int)
func (*QueryParameterMatcher) Equal ¶
func (this *QueryParameterMatcher) Equal(that interface{}) bool
func (*QueryParameterMatcher) GetName ¶
func (m *QueryParameterMatcher) GetName() string
func (*QueryParameterMatcher) GetRegex ¶
func (m *QueryParameterMatcher) GetRegex() bool
func (*QueryParameterMatcher) GetValue ¶
func (m *QueryParameterMatcher) GetValue() string
func (*QueryParameterMatcher) Hash ¶ added in v1.2.13
func (m *QueryParameterMatcher) Hash(hasher hash.Hash64) (uint64, error)
Hash function
func (*QueryParameterMatcher) ProtoMessage ¶
func (*QueryParameterMatcher) ProtoMessage()
func (*QueryParameterMatcher) Reset ¶
func (m *QueryParameterMatcher) Reset()
func (*QueryParameterMatcher) String ¶
func (m *QueryParameterMatcher) String() string
func (*QueryParameterMatcher) XXX_DiscardUnknown ¶
func (m *QueryParameterMatcher) XXX_DiscardUnknown()
func (*QueryParameterMatcher) XXX_Marshal ¶
func (m *QueryParameterMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*QueryParameterMatcher) XXX_Merge ¶
func (m *QueryParameterMatcher) XXX_Merge(src proto.Message)
func (*QueryParameterMatcher) XXX_Size ¶
func (m *QueryParameterMatcher) XXX_Size() int
func (*QueryParameterMatcher) XXX_Unmarshal ¶
func (m *QueryParameterMatcher) XXX_Unmarshal(b []byte) error
Click to show internal directories.
Click to hide internal directories.