mirror of
https://github.com/kataras/iris.git
synced 2025-02-02 23:40:35 +01:00
Add easy way to set Read/WriteTimeout instead of http://targetliu.com/golang-iriszhong-tong-guo-pluginshe-zhi-httpchao-shi-shi-jian/
Instead of this article, I just found, shows you how to inject the main server, now you can just use the: iris.ListenTo(config.Server{WriteTimeout: 5* time.Second, ReadTimeout= 5*time.Second, ListeningAddr:":8080"})
This commit is contained in:
parent
2b364817c3
commit
3c50d26808
|
@ -4,6 +4,7 @@ import (
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/imdario/mergo"
|
"github.com/imdario/mergo"
|
||||||
"github.com/valyala/fasthttp"
|
"github.com/valyala/fasthttp"
|
||||||
|
@ -75,6 +76,19 @@ type Server struct {
|
||||||
// Default buffer size is used if not set.
|
// Default buffer size is used if not set.
|
||||||
WriteBufferSize int
|
WriteBufferSize int
|
||||||
|
|
||||||
|
// Maximum duration for reading the full request (including body).
|
||||||
|
//
|
||||||
|
// This also limits the maximum duration for idle keep-alive
|
||||||
|
// connections.
|
||||||
|
//
|
||||||
|
// By default request read timeout is unlimited.
|
||||||
|
ReadTimeout time.Duration
|
||||||
|
|
||||||
|
// Maximum duration for writing the full response (including body).
|
||||||
|
//
|
||||||
|
// By default response write timeout is unlimited.
|
||||||
|
WriteTimeout time.Duration
|
||||||
|
|
||||||
// RedirectTo, defaults to empty, set it in order to override the station's handler and redirect all requests to this address which is of form(HOST:PORT or :PORT)
|
// RedirectTo, defaults to empty, set it in order to override the station's handler and redirect all requests to this address which is of form(HOST:PORT or :PORT)
|
||||||
//
|
//
|
||||||
// NOTE: the http status is 'StatusMovedPermanently', means one-time-redirect(the browser remembers the new addr and goes to the new address without need to request something from this server
|
// NOTE: the http status is 'StatusMovedPermanently', means one-time-redirect(the browser remembers the new addr and goes to the new address without need to request something from this server
|
||||||
|
|
3
http.go
3
http.go
|
@ -434,7 +434,8 @@ func (s *Server) Open(h fasthttp.RequestHandler) error {
|
||||||
s.Server.MaxRequestBodySize = s.Config.MaxRequestBodySize
|
s.Server.MaxRequestBodySize = s.Config.MaxRequestBodySize
|
||||||
s.Server.ReadBufferSize = s.Config.ReadBufferSize
|
s.Server.ReadBufferSize = s.Config.ReadBufferSize
|
||||||
s.Server.WriteBufferSize = s.Config.WriteBufferSize
|
s.Server.WriteBufferSize = s.Config.WriteBufferSize
|
||||||
|
s.Server.ReadTimeout = s.Config.ReadTimeout
|
||||||
|
s.Server.WriteTimeout = s.Config.WriteTimeout
|
||||||
if s.Config.RedirectTo != "" {
|
if s.Config.RedirectTo != "" {
|
||||||
// override the handler and redirect all requests to this addr
|
// override the handler and redirect all requests to this addr
|
||||||
s.Server.Handler = func(reqCtx *fasthttp.RequestCtx) {
|
s.Server.Handler = func(reqCtx *fasthttp.RequestCtx) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user