Browse Source

feat: Support get value from request header. (#839)

Bo-Yi Wu 8 years ago
parent
commit
ad2dacedd6
2 changed files with 14 additions and 0 deletions
  1. 5 0
      context.go
  2. 9 0
      context_test.go

+ 5 - 0
context.go

@@ -440,6 +440,11 @@ func (c *Context) Header(key, value string) {
 	}
 	}
 }
 }
 
 
+// GetHeader returns value from request headers
+func (c *Context) GetHeader(key string) string {
+	return c.requestHeader(key)
+}
+
 func (c *Context) SetCookie(
 func (c *Context) SetCookie(
 	name string,
 	name string,
 	value string,
 	value string,

+ 9 - 0
context_test.go

@@ -1007,3 +1007,12 @@ func TestWebsocketsRequired(t *testing.T) {
 
 
 	assert.False(t, c.IsWebsocket())
 	assert.False(t, c.IsWebsocket())
 }
 }
+
+func TestGetRequestHeaderValue(t *testing.T) {
+	c, _ := CreateTestContext(httptest.NewRecorder())
+	c.Request, _ = http.NewRequest("GET", "/chat", nil)
+	c.Request.Header.Set("Gin-Version", "1.0.0")
+
+	assert.Equal(t, "1.0.0", c.GetHeader("Gin-Version"))
+	assert.Equal(t, "", c.GetHeader("Connection"))
+}