api: add no cache headers for IE11

Adds pragma and expires headers for API calls so that IE11 does not
cache GET calls. Ref #5356
This commit is contained in:
Daniel Lee
2017-07-06 18:56:22 +02:00
parent fe3bcd3678
commit e6f9546a7c
2 changed files with 4 additions and 0 deletions
+2
View File
@@ -250,6 +250,8 @@ func AddDefaultResponseHeaders() macaron.Handler {
return func(ctx *Context) {
if ctx.IsApiRequest() && ctx.Req.Method == "GET" {
ctx.Resp.Header().Add("Cache-Control", "no-cache")
ctx.Resp.Header().Add("Pragma", "no-cache")
ctx.Resp.Header().Add("Expires", "-1")
}
}
}
+2
View File
@@ -33,6 +33,8 @@ func TestMiddlewareContext(t *testing.T) {
middlewareScenario("middleware should add Cache-Control header for GET requests to API", func(sc *scenarioContext) {
sc.fakeReq("GET", "/api/search").exec()
So(sc.resp.Header().Get("Cache-Control"), ShouldEqual, "no-cache")
So(sc.resp.Header().Get("Pragma"), ShouldEqual, "no-cache")
So(sc.resp.Header().Get("Expires"), ShouldEqual, "-1")
})
middlewareScenario("middleware should not add Cache-Control header to for non-API GET requests", func(sc *scenarioContext) {