mirror of
https://github.com/kataras/iris.git
synced 2025-03-14 08:26:26 +01:00
This commit is contained in:
parent
6a77c2ed22
commit
8cddc68993
|
@ -8,14 +8,14 @@ import (
|
|||
|
||||
// Currently only these 5 values are used for real
|
||||
const (
|
||||
// DefaultWriteTimeout 10 * time.Second
|
||||
DefaultWriteTimeout = 10 * time.Second
|
||||
// DefaultPongTimeout 60 * time.Second
|
||||
DefaultPongTimeout = 60 * time.Second
|
||||
// DefaultWriteTimeout 30 * time.Second
|
||||
DefaultWriteTimeout = 30 * time.Second
|
||||
// DefaultPongTimeout 120 * time.Second
|
||||
DefaultPongTimeout = 120 * time.Second
|
||||
// DefaultPingPeriod (DefaultPongTimeout * 9) / 10
|
||||
DefaultPingPeriod = (DefaultPongTimeout * 9) / 10
|
||||
// DefaultMaxMessageSize 1024
|
||||
DefaultMaxMessageSize = 1024
|
||||
// DefaultMaxMessageSize 2048
|
||||
DefaultMaxMessageSize = 2048
|
||||
)
|
||||
|
||||
//
|
||||
|
@ -23,17 +23,17 @@ const (
|
|||
// Websocket the config contains options for 'websocket' package
|
||||
type Websocket struct {
|
||||
// WriteTimeout time allowed to write a message to the connection.
|
||||
// Default value is 10 * time.Second
|
||||
// Default value is 30 * time.Second
|
||||
WriteTimeout time.Duration
|
||||
// PongTimeout allowed to read the next pong message from the connection
|
||||
// Default value is 60 * time.Second
|
||||
// Default value is 120 * time.Second
|
||||
PongTimeout time.Duration
|
||||
// PingPeriod send ping messages to the connection with this period. Must be less than PongTimeout
|
||||
// Default value is (PongTimeout * 9) / 10
|
||||
PingPeriod time.Duration
|
||||
// MaxMessageSize max message size allowed from connection
|
||||
// Default value is 1024
|
||||
MaxMessageSize int
|
||||
// Default value is 2048
|
||||
MaxMessageSize int64
|
||||
// Endpoint is the path which the websocket server will listen for clients/connections
|
||||
// Default value is empty string, if you don't set it the Websocket server is disabled.
|
||||
Endpoint string
|
||||
|
|
4
http.go
4
http.go
|
@ -359,8 +359,8 @@ func (s *Server) serve(l net.Listener) error {
|
|||
return s.Server.Serve(s.listener)
|
||||
}
|
||||
|
||||
// open opens/starts/runs/listens (to) the server, listen tls if Cert && Key is registed, listenUNIX if Mode is registed, otherwise listen
|
||||
func (s *Server) open() error {
|
||||
// Open opens/starts/runs/listens (to) the server, listen tls if Cert && Key is registed, listenUNIX if Mode is registed, otherwise listen
|
||||
func (s *Server) Open() error {
|
||||
if s.started {
|
||||
return errServerAlreadyStarted.Return()
|
||||
}
|
||||
|
|
|
@ -171,7 +171,7 @@ func (s *Framework) prepareTemplates() {
|
|||
func (s *Framework) openServer() (err error) {
|
||||
s.initialize()
|
||||
s.Plugins.DoPreListen(s)
|
||||
if err = s.HTTPServer.open(); err == nil {
|
||||
if err = s.HTTPServer.Open(); err == nil {
|
||||
// print the banner
|
||||
if !s.Config.DisableBanner {
|
||||
s.Logger.PrintBanner(banner,
|
||||
|
|
|
@ -8,7 +8,6 @@ import (
|
|||
"strconv"
|
||||
|
||||
"github.com/iris-contrib/websocket"
|
||||
"github.com/kataras/iris/config"
|
||||
"github.com/kataras/iris/utils"
|
||||
)
|
||||
|
||||
|
@ -80,12 +79,12 @@ func newConnection(websocketConn *websocket.Conn, s *server) *connection {
|
|||
}
|
||||
|
||||
func (c *connection) write(messageType int, data []byte) error {
|
||||
c.underline.SetWriteDeadline(time.Now().Add(config.DefaultWriteTimeout))
|
||||
c.underline.SetWriteDeadline(time.Now().Add(c.server.config.WriteTimeout))
|
||||
return c.underline.WriteMessage(messageType, data)
|
||||
}
|
||||
|
||||
func (c *connection) writer() {
|
||||
ticker := time.NewTicker(config.DefaultPingPeriod)
|
||||
ticker := time.NewTicker(c.server.config.PingPeriod)
|
||||
defer func() {
|
||||
ticker.Stop()
|
||||
c.underline.Close()
|
||||
|
@ -118,10 +117,10 @@ func (c *connection) reader() {
|
|||
}()
|
||||
conn := c.underline
|
||||
|
||||
conn.SetReadLimit(config.DefaultMaxMessageSize)
|
||||
conn.SetReadDeadline(time.Now().Add(config.DefaultPongTimeout))
|
||||
conn.SetReadLimit(c.server.config.MaxMessageSize)
|
||||
conn.SetReadDeadline(time.Now().Add(c.server.config.PongTimeout))
|
||||
conn.SetPongHandler(func(s string) error {
|
||||
conn.SetReadDeadline(time.Now().Add(config.DefaultPongTimeout))
|
||||
conn.SetReadDeadline(time.Now().Add(c.server.config.PongTimeout))
|
||||
return nil
|
||||
})
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user