 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- Variables
- func AddRequestHook(hook *RequestHook)
- func CallRequestAfterHook(req *Request, writer *ResponseWriter) (goNext bool)
- func CallRequestBeforeHook(req *Request, writer *ResponseWriter) (goNext bool)
- type ClientPool
- type Listener
- func (this *Listener) ApplyServer(server *teaconfigs.ServerConfig)
- func (this *Listener) HasServer(serverId string) bool
- func (this *Listener) HasServers() bool
- func (this *Listener) Reload() error
- func (this *Listener) RemoveServer(serverId string)
- func (this *Listener) Reset()
- func (this *Listener) Shutdown() error
- func (this *Listener) Start() error
 
- type Manager
- func (this *Manager) ApplyServer(server *teaconfigs.ServerConfig)
- func (this *Manager) FindServer(serverId string) *teaconfigs.ServerConfig
- func (this *Manager) FindServerErrors(serverId string) []string
- func (this *Manager) Reload() error
- func (this *Manager) RemoveServer(serverId string)
- func (this *Manager) Restart() error
- func (this *Manager) Shutdown() error
- func (this *Manager) Start() error
- func (this *Manager) Wait()
 
- type NamedServer
- type RedirectError
- type Request
- func (this *Request) CachePolicy() *shared.CachePolicy
- func (this *Request) Format(source string) string
- func (this *Request) IsCacheEnabled() bool
- func (this *Request) IsWatching() bool
- func (this *Request) Raw() *http.Request
- func (this *Request) SetAttr(key string, value string)
- func (this *Request) SetCacheEnabled()
- func (this *Request) SetCachePolicy(config *shared.CachePolicy)
- func (this *Request) SetHost(host string)
- func (this *Request) SetIsWatching(isWatching bool)
- func (this *Request) SetURI(uri string)
 
- type RequestHook
- type ResponseWriter
- func (this *ResponseWriter) AddHeaders(header http.Header)
- func (this *ResponseWriter) Body() []byte
- func (this *ResponseWriter) BodyIsCopying() bool
- func (this *ResponseWriter) Close()
- func (this *ResponseWriter) Gzip(level uint8, minLength int64)
- func (this *ResponseWriter) Header() http.Header
- func (this *ResponseWriter) HeaderData() []byte
- func (this *ResponseWriter) Prepare(size int64)
- func (this *ResponseWriter) Raw() http.ResponseWriter
- func (this *ResponseWriter) SentBodyBytes() int64
- func (this *ResponseWriter) SetBodyCopying(b bool)
- func (this *ResponseWriter) StatusCode() int
- func (this *ResponseWriter) Write(data []byte) (n int, err error)
- func (this *ResponseWriter) WriteHeader(statusCode int)
 
- type Scheme
- type StaticDelivery
- type StaticFileCache
Constants ¶
      View Source
      
  
const ( SchemeHTTP = Scheme(1) SchemeHTTPS = Scheme(2) )
Variables ¶
      View Source
      
  var QPS = int32(0)
    对外可读取的QPS
公用的静态文件分发器
客户端池单例
共享的管理对象
      View Source
      
  var StatusCodeParser func(statusCode int, headers http.Header, respData []byte, parserScript string) (string, error) = nil
    状态码筛选
Functions ¶
func CallRequestAfterHook ¶
func CallRequestAfterHook(req *Request, writer *ResponseWriter) (goNext bool)
执行After Hook
func CallRequestBeforeHook ¶
func CallRequestBeforeHook(req *Request, writer *ResponseWriter) (goNext bool)
执行Before Hook
Types ¶
type Listener ¶
type Listener struct {
	IsChanged bool // 标记是否改变,用来在其他地方重启改变的监听器
	Scheme  Scheme // http & https
	Address string
	Error   error
	// contains filtered or unexported fields
}
    代理服务监听器
func (*Listener) ApplyServer ¶ added in v0.1.2
func (this *Listener) ApplyServer(server *teaconfigs.ServerConfig)
应用配置
func (*Listener) RemoveServer ¶ added in v0.1.2
删除配置
type Manager ¶ added in v0.1.2
type Manager struct {
	// contains filtered or unexported fields
}
    管理器
func (*Manager) ApplyServer ¶ added in v0.1.2
func (this *Manager) ApplyServer(server *teaconfigs.ServerConfig)
添加Server
func (*Manager) FindServer ¶ added in v0.1.2
func (this *Manager) FindServer(serverId string) *teaconfigs.ServerConfig
查找Server
func (*Manager) FindServerErrors ¶ added in v0.1.2
查找Server相关错误
func (*Manager) RemoveServer ¶ added in v0.1.2
删除Server
type NamedServer ¶ added in v0.1.2
type NamedServer struct {
	Name   string                   // 匹配后的域名
	Server *teaconfigs.ServerConfig // 匹配后的服务配置
}
    域名和服务映射
type RedirectError ¶
type RedirectError struct {
}
    func (*RedirectError) Error ¶
func (this *RedirectError) Error() string
type Request ¶
type Request struct {
	// contains filtered or unexported fields
}
    请求定义
func (*Request) CachePolicy ¶
func (this *Request) CachePolicy() *shared.CachePolicy
func (*Request) SetCacheEnabled ¶
func (this *Request) SetCacheEnabled()
func (*Request) SetCachePolicy ¶
func (this *Request) SetCachePolicy(config *shared.CachePolicy)
type RequestHook ¶
type RequestHook struct {
	BeforeRequest func(req *Request, writer *ResponseWriter) (goNext bool)
	AfterRequest  func(req *Request, writer *ResponseWriter) (goNext bool)
}
    请求Hook定义
type ResponseWriter ¶
type ResponseWriter struct {
	// contains filtered or unexported fields
}
    响应Writer
func NewResponseWriter ¶
func NewResponseWriter(httpResponseWriter http.ResponseWriter) *ResponseWriter
包装对象
func (*ResponseWriter) AddHeaders ¶
func (this *ResponseWriter) AddHeaders(header http.Header)
添加一组Header
func (*ResponseWriter) BodyIsCopying ¶
func (this *ResponseWriter) BodyIsCopying() bool
判断是否在拷贝Body数据
func (*ResponseWriter) SetBodyCopying ¶
func (this *ResponseWriter) SetBodyCopying(b bool)
设置拷贝Body数据
type StaticDelivery ¶ added in v0.1.2
type StaticDelivery struct {
	// contains filtered or unexported fields
}
    静态文件分发器
type StaticFileCache ¶ added in v0.1.2
type StaticFileCache struct {
	// contains filtered or unexported fields
}
    静态文件缓存
       Source Files
      ¶
      Source Files
      ¶
    
   Click to show internal directories. 
   Click to hide internal directories.