1
0
mirror of https://github.com/labstack/echo.git synced 2025-03-21 21:27:04 +02:00

Added engine.Request#SetHost function

Signed-off-by: Vishal Rana <vr@labstack.com>
This commit is contained in:
Vishal Rana 2016-09-21 14:08:18 -07:00
parent 862bee4ebd
commit 2ed15f491b
5 changed files with 19 additions and 3 deletions

@ -38,6 +38,9 @@ type (
// the `Host` header or the host name given in the URL itself.
Host() string
// SetHost sets the host of the request.
SetHost(string)
// URI returns the unmodified `Request-URI` sent by the client.
URI() string

@ -49,6 +49,11 @@ func (r *Request) Host() string {
return string(r.RequestCtx.Host())
}
// SetHost implements `engine.Request#SetHost` function.
func (r *Request) SetHost(host string) {
r.RequestCtx.Request.SetHost(host)
}
// URL implements `engine.Request#URL` function.
func (r *Request) URL() engine.URL {
return r.url

@ -58,6 +58,11 @@ func (r *Request) Host() string {
return r.Request.Host
}
// SetHost implements `engine.Request#SetHost` function.
func (r *Request) SetHost(host string) {
r.Request.Host = host
}
// URL implements `engine.Request#URL` function.
func (r *Request) URL() engine.URL {
return r.url

@ -41,10 +41,10 @@ Hello world!
func RequestTest(t *testing.T, request engine.Request) {
assert.Equal(t, "github.com", request.Host())
request.SetHost("labstack.com")
assert.Equal(t, "labstack.com", request.Host())
request.SetURI("/labstack/echo?token=54321")
assert.Equal(t, "/labstack/echo?token=54321", request.URI())
assert.Equal(t, "/labstack/echo", request.URL().Path())
assert.Equal(t, "https://github.com/", request.Referer())
assert.Equal(t, "192.168.1.1", request.Header().Get("X-Real-IP"))
@ -53,7 +53,6 @@ func RequestTest(t *testing.T, request engine.Request) {
assert.Equal(t, "127.0.0.1", request.RemoteAddress())
assert.Equal(t, "192.168.1.1", request.RealIP())
assert.Equal(t, "POST", request.Method())
assert.Equal(t, int64(261), request.ContentLength())
assert.Equal(t, "bar", request.FormValue("foo"))

@ -48,6 +48,10 @@ func (r *Request) Host() string {
return r.request.Host
}
func (r *Request) SetHost(host string) {
r.request.Host = host
}
func (r *Request) URL() engine.URL {
return r.url
}