http_router

package
v0.17.2 Latest Latest
Warning

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

Go to latest
Published: May 10, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Check added in v0.9.0

func Check(v *Config, workers map[eosc.RequireId]eosc.IWorker) error

func Create added in v0.9.0

func Create(id, name string, v *Config, workers map[eosc.RequireId]eosc.IWorker) (eosc.IWorker, error)

Create 创建一个http路由驱动实例

func Register

func Register(register eosc.IExtenderDriverRegister)

Register 注册http路由驱动工厂

Types

type Config

type Config struct {
	Listen    int            `json:"listen" yaml:"listen" title:"port" description:"使用端口" default:"80" label:"端口号" maximum:"65535"`
	Method    []string       `json:"method" yaml:"method" enum:"GET,POST,PUT,DELETE,PATCH,HEAD,OPTIONS" label:"请求方式"`
	Protocols []string       `json:"protocols" yaml:"protocols" enum:"http,https" label:"协议"`
	Host      []string       `json:"host" yaml:"host" label:"域名"`
	Path      string         `json:"location" yaml:"location" label:"路由路径"`
	Rules     []Rule         `json:"rules" yaml:"rules" label:"额外路由规则"`
	Service   eosc.RequireId `` /* 160-byte string literal not displayed */

	Status int               `json:"status" yaml:"status" label:"响应状态码" switch:"service===''" default:"200" maximum:"1000" minimum:"100"`
	Header map[string]string `json:"header" yaml:"header" label:"响应头部" switch:"service===''"`
	Body   string            `json:"body" yaml:"status" format:"text" label:"响应Body" switch:"service===''"`

	Template  eosc.RequireId `` /* 132-byte string literal not displayed */
	Websocket bool           `json:"websocket" yaml:"websocket" label:"Websocket" switch:"service!==''"`
	Disable   bool           `json:"disable" yaml:"disable" label:"禁用路由"`
	Plugins   plugin.Plugins `json:"plugins" yaml:"plugins" label:"插件配置"`

	Retry   int               `json:"retry" label:"重试次数" yaml:"retry" switch:"service!==''"`
	TimeOut int               `json:"time_out" label:"超时时间" switch:"service!==''"`
	Labels  map[string]string `json:"labels" label:"路由标签"`
}

type Finisher added in v0.8.0

type Finisher struct {
}

func (*Finisher) Finish added in v0.8.0

func (f *Finisher) Finish(org eocontext.EoContext) error

type HttpRouter added in v0.8.0

type HttpRouter struct {
	// contains filtered or unexported fields
}

func (*HttpRouter) CheckSkill added in v0.8.0

func (h *HttpRouter) CheckSkill(skill string) bool

func (*HttpRouter) Destroy added in v0.8.0

func (h *HttpRouter) Destroy() error

func (*HttpRouter) Id added in v0.8.0

func (h *HttpRouter) Id() string

func (*HttpRouter) Reset added in v0.8.0

func (h *HttpRouter) Reset(conf interface{}, workers map[eosc.RequireId]eosc.IWorker) error

func (*HttpRouter) Start added in v0.8.0

func (h *HttpRouter) Start() error

func (*HttpRouter) Stop added in v0.8.0

func (h *HttpRouter) Stop() error

type RouterDriverFactory

type RouterDriverFactory struct {
	eosc.IExtenderDriverFactory
}

RouterDriverFactory http路由驱动工厂结构体

func NewRouterDriverFactory

func NewRouterDriverFactory() *RouterDriverFactory

NewRouterDriverFactory 创建一个http路由驱动工厂

func (*RouterDriverFactory) Create

func (r *RouterDriverFactory) Create(profession string, name string, label string, desc string, params map[string]interface{}) (eosc.IExtenderDriver, error)

Create 创建http路由驱动

type Rule added in v0.8.0

type Rule struct {
	Type  string `json:"type" yaml:"type" label:"类型" enum:"header,query,cookie"`
	Name  string `json:"name" yaml:"name" label:"参数名"`
	Value string `json:"value" yaml:"value" label:"值规" `
}

Rule 规则

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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