routing

package
v1.28.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 11, 2025 License: AGPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCloneFlowFilter

func NewCloneFlowFilter(c *config.Config) (pipeline.Filter, error)

func NewContextSwitchFlowFilter

func NewContextSwitchFlowFilter(c *config.Config) (pipeline.Filter, error)

func NewFlowFilter

func NewFlowFilter(c *config.Config) (pipeline.Filter, error)

func NewRatioRoutingFlowFilter

func NewRatioRoutingFlowFilter(c *config.Config) (pipeline.Filter, error)

func NewRedirectFilter

func NewRedirectFilter(c *config.Config) (pipeline.Filter, error)

func NewSwitchFlowFilter

func NewSwitchFlowFilter(c *config.Config) (pipeline.Filter, error)

Types

type CaseRule

type CaseRule struct {
	Case          []interface{} `config:"case"`
	CaseValueType string        `config:"case_value_type"`
	Action        string        `config:"action"`
	Flow          string        `config:"flow"`
	// contains filtered or unexported fields
}

type CloneFlowFilter

type CloneFlowFilter struct {
	Flows    []string `config:"flows"`
	Continue bool     `config:"continue"`
}

func (*CloneFlowFilter) Filter

func (filter *CloneFlowFilter) Filter(ctx *fasthttp.RequestCtx)

func (*CloneFlowFilter) Name

func (filter *CloneFlowFilter) Name() string

type ContextFlow

type ContextFlow struct {
	Context  string `config:"context"`
	Pattern  string `config:"context_parse_pattern"`
	Template string `config:"flow_id_template"`
	Continue bool   `config:"continue"`
	// contains filtered or unexported fields
}

type ContextSwitchFilter

type ContextSwitchFilter struct {
	Context            string     `config:"context"`
	ContinueAfterMatch bool       `config:"continue"`
	SkipError          bool       `config:"skip_error"`
	StringifyValue     bool       `config:"stringify_value"`
	DefaultAction      string     `config:"default_action"`
	DefaultFlow        string     `config:"default_flow"`
	Switch             []CaseRule `config:"switch"`
	// contains filtered or unexported fields
}

func (*ContextSwitchFilter) Filter

func (filter *ContextSwitchFilter) Filter(ctx *fasthttp.RequestCtx)

func (*ContextSwitchFilter) Name

func (filter *ContextSwitchFilter) Name() string

type FlowFilter

type FlowFilter struct {
	Flow                string   `config:"flow"`
	Flows               []string `config:"flows"`
	IgnoreUndefinedFlow bool     `config:"ignore_undefined_flow"`

	ContextFlow *ContextFlow `config:"context_flow"`
	// contains filtered or unexported fields
}

func (*FlowFilter) Filter

func (filter *FlowFilter) Filter(ctx *fasthttp.RequestCtx)

func (*FlowFilter) Name

func (filter *FlowFilter) Name() string

type FlowItem

type FlowItem struct {
	Flow string `config:"flow"`
	// contains filtered or unexported fields
}

type RatioRoutingFlowFilter

type RatioRoutingFlowFilter struct {
	Ratio              float32 `config:"ratio"`
	Flow               string  `config:"flow"`
	Action             string  `config:"action"` //redirect_flow or drop
	ContinueAfterMatch bool    `config:"continue"`
	// contains filtered or unexported fields
}

func (*RatioRoutingFlowFilter) Filter

func (filter *RatioRoutingFlowFilter) Filter(ctx *fasthttp.RequestCtx)

func (*RatioRoutingFlowFilter) Name

func (filter *RatioRoutingFlowFilter) Name() string

type RedirectFilter

type RedirectFilter struct {
	Uri  string `config:"uri"`
	Code int    `config:"code"`
}

func (*RedirectFilter) Filter

func (filter *RedirectFilter) Filter(ctx *fasthttp.RequestCtx)

func (*RedirectFilter) Name

func (filter *RedirectFilter) Name() string

type SwitchFlowFilter

type SwitchFlowFilter struct {
	PathRules          []SwitchRule `config:"path_rules"`
	RemovePrefix       bool         `config:"remove_prefix"`
	ContinueAfterMatch bool         `config:"continue"`
	Unescape           bool         `config:"unescape"`
}

func (*SwitchFlowFilter) Filter

func (filter *SwitchFlowFilter) Filter(ctx *fasthttp.RequestCtx)

func (*SwitchFlowFilter) Name

func (filter *SwitchFlowFilter) Name() string

type SwitchRule

type SwitchRule struct {
	Prefix string `config:"prefix"`
	Flow   string `config:"flow"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL