config

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: May 24, 2022 License: MIT Imports: 5 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AllowRequest

type AllowRequest func(*types.HttpContext) (int, map[string]interface{})

type AttachOptions

type AttachOptions struct {
	// name of the path to capture
	InternalPath *string `json:"path,omitempty"`

	// destroy unhandled upgrade requests
	InternalDestroyUpgrade *bool `json:"destroyUpgrade,omitempty"`

	//  milliseconds after which unhandled requests are ended
	InternalDestroyUpgradeTimeout *time.Duration `json:"destroyUpgradeTimeout,omitempty"`
}

func DefaultAttachOptions

func DefaultAttachOptions() *AttachOptions

func (*AttachOptions) DestroyUpgrade

func (a *AttachOptions) DestroyUpgrade() bool

func (*AttachOptions) DestroyUpgradeTimeout

func (a *AttachOptions) DestroyUpgradeTimeout() time.Duration

func (*AttachOptions) Path

func (a *AttachOptions) Path() string

func (*AttachOptions) SetDestroyUpgrade

func (a *AttachOptions) SetDestroyUpgrade(destroyUpgrade bool)

destroy unhandled upgrade requests @default true

func (*AttachOptions) SetDestroyUpgradeTimeout

func (a *AttachOptions) SetDestroyUpgradeTimeout(destroyUpgradeTimeout time.Duration)

milliseconds after which unhandled requests are ended @default 1000

func (*AttachOptions) SetPath

func (a *AttachOptions) SetPath(path string)

name of the path to capture @default "/engine.io"

type ServerOptions

type ServerOptions struct {
	// how many ms without a pong packet to consider the connection closed
	InternalPingTimeout *time.Duration `json:"pingTimeout,omitempty"`

	// how many ms before sending a new ping packet
	InternalPingInterval *time.Duration `json:"pingInterval,omitempty"`

	// how many ms before an uncompleted transport upgrade is cancelled
	InternalUpgradeTimeout *time.Duration `json:"upgradeTimeout,omitempty"`

	// how many bytes or characters a message can be, before closing the session (to avoid DoS).
	InternalMaxHttpBufferSize *int64 `json:"maxHttpBufferSize,omitempty"`

	// A function that receives a given handshake or upgrade request as its first parameter,
	// and can decide whether to continue or not. The second argument is a function that needs
	// to be called with the decided information: fn(err, success), where success is a boolean
	// value where false means that the request is rejected, and err is an error code.
	InternalAllowRequest *AllowRequest `json:"allowRequest,omitempty"`

	// the low-level transports that are enabled
	InternalTransports *types.Set[string] `json:"transports,omitempty"`

	// whether to allow transport upgrades
	InternalAllowUpgrades *bool `json:"allowUpgrades,omitempty"`

	// parameters of the WebSocket permessage-deflate extension (see ws module api docs). Set to false to disable.
	InternalPerMessageDeflate *types.PerMessageDeflate `json:"perMessageDeflate,omitempty"`

	// parameters of the http compression for the polling transports (see zlib api docs). Set to false to disable.
	InternalHttpCompression *types.HttpCompression `json:"httpCompression,omitempty"`

	// an optional packet which will be concatenated to the handshake packet emitted by Engine.IO.
	InternalInitialPacket io.Reader `json:"initialPacket,omitempty"`

	// configuration of the cookie that contains the client sid to send as part of handshake response headers. This cookie
	// might be used for sticky-session. Defaults to not sending any cookie.
	InternalCookie *http.Cookie `json:"cookie,omitempty"`

	// the options that will be forwarded to the cors module
	InternalCors *types.Cors `json:"cors,omitempty"`

	// whether to enable compatibility with Socket.IO v2 clients
	InternalAllowEIO3 *bool `json:"allowEIO3,omitempty"`
}

func DefaultServerOptions

func DefaultServerOptions() *ServerOptions

func (*ServerOptions) AllowEIO3

func (s *ServerOptions) AllowEIO3() bool

func (*ServerOptions) AllowRequest

func (s *ServerOptions) AllowRequest() (allowRequest AllowRequest)

func (*ServerOptions) AllowUpgrades

func (s *ServerOptions) AllowUpgrades() bool

func (*ServerOptions) Assign

func (s *ServerOptions) Assign(data *ServerOptions) (*ServerOptions, error)

func (*ServerOptions) Cookie

func (s *ServerOptions) Cookie() *http.Cookie

func (*ServerOptions) Cors

func (s *ServerOptions) Cors() *types.Cors

func (*ServerOptions) HttpCompression

func (s *ServerOptions) HttpCompression() *types.HttpCompression

func (*ServerOptions) InitialPacket

func (s *ServerOptions) InitialPacket() io.Reader

func (*ServerOptions) MaxHttpBufferSize

func (s *ServerOptions) MaxHttpBufferSize() int64

func (*ServerOptions) PerMessageDeflate

func (s *ServerOptions) PerMessageDeflate() *types.PerMessageDeflate

func (*ServerOptions) PingInterval

func (s *ServerOptions) PingInterval() time.Duration

func (*ServerOptions) PingTimeout

func (s *ServerOptions) PingTimeout() time.Duration

func (*ServerOptions) SetAllowEIO3

func (s *ServerOptions) SetAllowEIO3(allowEIO3 bool)

whether to enable compatibility with Socket.IO v2 clients @default false

func (*ServerOptions) SetAllowRequest

func (s *ServerOptions) SetAllowRequest(allowRequest AllowRequest)

A function that receives a given handshake or upgrade request as its first parameter, and can decide whether to continue or not. The second argument is a function that needs to be called with the decided information: fn(err, success), where success is a boolean value where false means that the request is rejected, and err is an error code.

func (*ServerOptions) SetAllowUpgrades

func (s *ServerOptions) SetAllowUpgrades(allowUpgrades bool)

whether to allow transport upgrades @default true

func (*ServerOptions) SetCookie

func (s *ServerOptions) SetCookie(cookie *http.Cookie)

configuration of the cookie that contains the client sid to send as part of handshake response headers. This cookie might be used for sticky-session. Defaults to not sending any cookie. @default false

func (*ServerOptions) SetCors

func (s *ServerOptions) SetCors(cors *types.Cors)

the options that will be forwarded to the cors module

func (*ServerOptions) SetHttpCompression

func (s *ServerOptions) SetHttpCompression(httpCompression *types.HttpCompression)

parameters of the http compression for the polling transports (see zlib api docs). Set to false to disable. @default true

func (*ServerOptions) SetInitialPacket

func (s *ServerOptions) SetInitialPacket(initialPacket io.Reader)

an optional packet which will be concatenated to the handshake packet emitted by Engine.IO.

func (*ServerOptions) SetMaxHttpBufferSize

func (s *ServerOptions) SetMaxHttpBufferSize(maxHttpBufferSize int64)

how many bytes or characters a message can be, before closing the session (to avoid DoS). @default 1e5 (100 KB)

func (*ServerOptions) SetPerMessageDeflate

func (s *ServerOptions) SetPerMessageDeflate(perMessageDeflate *types.PerMessageDeflate)

parameters of the WebSocket permessage-deflate extension (see ws module api docs). Set to false to disable. @default nil

func (*ServerOptions) SetPingInterval

func (s *ServerOptions) SetPingInterval(pingInterval time.Duration)

how many ms before sending a new ping packet @default 25000

func (*ServerOptions) SetPingTimeout

func (s *ServerOptions) SetPingTimeout(pingTimeout time.Duration)

how many ms without a pong packet to consider the connection closed @default 20000

func (*ServerOptions) SetTransports

func (s *ServerOptions) SetTransports(transports *types.Set[string])

the low-level transports that are enabled @default ["polling", "websocket"]

func (*ServerOptions) SetUpgradeTimeout

func (s *ServerOptions) SetUpgradeTimeout(upgradeTimeout time.Duration)

how many ms before an uncompleted transport upgrade is cancelled @default 10000

func (*ServerOptions) Transports

func (s *ServerOptions) Transports() *types.Set[string]

func (*ServerOptions) UpgradeTimeout

func (s *ServerOptions) UpgradeTimeout() time.Duration

Jump to

Keyboard shortcuts

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