// CheckReroute is a middleware handler that will check for and deal with // reroute cookies func CheckReroute(g *gas.Gas) (int, gas.Outputter) { reroute, err := g.Cookie("_reroute") if reroute != nil { if err == nil { blob, err := base64.StdEncoding.DecodeString(reroute.Value) if err == nil { g.SetData("_reroute", blob) } else { log.Println("gas: dispatch reroute:", err) } } else { log.Println("gas: reroute cookie:", err) } // Empty the cookie out and toss it back reroute.Value = "" reroute.MaxAge = -1 g.SetCookie(reroute) } return g.Continue() }