Documentation
¶
Index ¶
- type Context
- type Handler
- type HandlersChain
- type Hub
- type Router
- func (r *Router) Dispatch(session *Session, codec codec.Codec, data []byte)
- func (r *Router) ErrorHandler(h func(session *Session, err interface{}))
- func (r *Router) NotFoundHandler(h func(session *Session, codec codec.Codec, data []byte))
- func (r *Router) Register(msgType message.Type, payload interface{}, handler Handler) *Router
- func (r *Router) Use(middleware ...Handler)
- type Session
- type SessionHandler
- type SessionOption
- func WithSessionHeartBeatTimeout(d time.Duration) SessionOption
- func WithSessionHeartBeatTimeoutTimes(times int) SessionOption
- func WithSessionReadLimit(limit int64) SessionOption
- func WithSessionReadTimeout(d time.Duration) SessionOption
- func WithSessionReceiveQueueSize(size int) SessionOption
- func WithSessionSendQueueSize(size int) SessionOption
- func WithSessionWriteTimeout(d time.Duration) SessionOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Context ¶
type Context struct { // Session 对应客户端连接 Session *Session // MsgType 消息类型 MsgType message.Type // Payload 消息体 Payload interface{} // contains filtered or unexported fields }
Context 上下文信息
type Router ¶
type Router struct {
// contains filtered or unexported fields
}
router 路由
func (*Router) ErrorHandler ¶
ErrorHandler 错误处理
func (*Router) NotFoundHandler ¶
NotFoundHandler 未找到handler
type Session ¶
type Session struct { ID string // Data 保存Session相关数据 Data sync.Map // contains filtered or unexported fields }
Session 对应一个客户端连接
func NewSession ¶
func NewSession(conn conn.Conn, handler SessionHandler, opt ...SessionOption) *Session
NewSession 创建session实例
type SessionHandler ¶
type SessionHandler interface { OnConnect(*Session) OnMessage(*Session, []byte) OnClose(*Session) OnError(*Session, error) }
SessionHandler 事件处理
type SessionOption ¶
type SessionOption func(*options)
SessionOption 可选项
func WithSessionHeartBeatTimeout ¶
func WithSessionHeartBeatTimeout(d time.Duration) SessionOption
WithSessionHeartBeatTimeout 心跳超时
func WithSessionHeartBeatTimeoutTimes ¶
func WithSessionHeartBeatTimeoutTimes(times int) SessionOption
WithSessionHeartBeatTimeoutTimes 心跳超时次数
func WithSessionReadLimit ¶
func WithSessionReadLimit(limit int64) SessionOption
WithSessionReadLimit 读取最大字节数
func WithSessionReadTimeout ¶
func WithSessionReadTimeout(d time.Duration) SessionOption
WithSessionReadTimeout 读取超时
func WithSessionReceiveQueueSize ¶
func WithSessionReceiveQueueSize(size int) SessionOption
WithSessionReceiveQueueSize 接收队列大小
func WithSessionSendQueueSize ¶
func WithSessionSendQueueSize(size int) SessionOption
WithSessionSendQueueSize 发送队列大小
func WithSessionWriteTimeout ¶
func WithSessionWriteTimeout(d time.Duration) SessionOption
WithSessionWriteTimeout 写入超时
Click to show internal directories.
Click to hide internal directories.