mirror of
https://github.com/kataras/iris.git
synced 2025-03-14 10:56:29 +01:00
Nothing special - Set a server.Config field which can override the ListeningAddr when server.Host()/Port. Mostly used inside glb tmpl funcs
This commit is contained in:
parent
3f13707428
commit
40bc7f5054
|
@ -79,6 +79,13 @@ type Server struct {
|
||||||
RedirectTo string
|
RedirectTo string
|
||||||
// Virtual If this server is not really listens to a real host, it mostly used in order to achieve testing without system modifications
|
// Virtual If this server is not really listens to a real host, it mostly used in order to achieve testing without system modifications
|
||||||
Virtual bool
|
Virtual bool
|
||||||
|
// VListeningAddr, can be used for both virtual = true or false,
|
||||||
|
// if it's setted to not empty, then the server's Host() will return this addr instead of the ListeningAddr.
|
||||||
|
// server's Host() is used inside global template helper funcs
|
||||||
|
// set it when you are sure you know what it does.
|
||||||
|
//
|
||||||
|
// Default is empty ""
|
||||||
|
VListeningAddr string
|
||||||
// Name the server's name, defaults to "iris".
|
// Name the server's name, defaults to "iris".
|
||||||
// You're free to change it, but I will trust you to don't, this is the only setting whose somebody, like me, can see if iris web framework is used
|
// You're free to change it, but I will trust you to don't, this is the only setting whose somebody, like me, can see if iris web framework is used
|
||||||
Name string
|
Name string
|
||||||
|
@ -117,10 +124,15 @@ func ServerParseAddr(listeningAddr string) string {
|
||||||
|
|
||||||
// DefaultServer returns the default configs for the server
|
// DefaultServer returns the default configs for the server
|
||||||
func DefaultServer() Server {
|
func DefaultServer() Server {
|
||||||
return Server{ListeningAddr: DefaultServerAddr, Name: DefaultServerName,
|
return Server{
|
||||||
|
ListeningAddr: DefaultServerAddr,
|
||||||
|
Name: DefaultServerName,
|
||||||
MaxRequestBodySize: DefaultMaxRequestBodySize,
|
MaxRequestBodySize: DefaultMaxRequestBodySize,
|
||||||
ReadBufferSize: DefaultReadBufferSize,
|
ReadBufferSize: DefaultReadBufferSize,
|
||||||
WriteBufferSize: DefaultWriteBufferSize,
|
WriteBufferSize: DefaultWriteBufferSize,
|
||||||
|
RedirectTo: "",
|
||||||
|
Virtual: false,
|
||||||
|
VListeningAddr: "",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
5
http.go
5
http.go
|
@ -303,13 +303,16 @@ func (s *Server) Listener() net.Listener {
|
||||||
|
|
||||||
// Host returns the registered host for the server
|
// Host returns the registered host for the server
|
||||||
func (s *Server) Host() (host string) {
|
func (s *Server) Host() (host string) {
|
||||||
|
if s.Config.VListeningAddr != "" {
|
||||||
|
return s.Config.VListeningAddr
|
||||||
|
}
|
||||||
return s.Config.ListeningAddr
|
return s.Config.ListeningAddr
|
||||||
}
|
}
|
||||||
|
|
||||||
// Port returns the port which server listening for
|
// Port returns the port which server listening for
|
||||||
// if no port given with the ListeningAddr, it returns 80
|
// if no port given with the ListeningAddr, it returns 80
|
||||||
func (s *Server) Port() (port int) {
|
func (s *Server) Port() (port int) {
|
||||||
a := s.Config.ListeningAddr
|
a := s.Host()
|
||||||
if portIdx := strings.IndexByte(a, ':'); portIdx != -1 {
|
if portIdx := strings.IndexByte(a, ':'); portIdx != -1 {
|
||||||
p, err := strconv.Atoi(a[portIdx+1:])
|
p, err := strconv.Atoi(a[portIdx+1:])
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user