Ejemplo n.º 1
0
func (h *humanstxt) Response(ctx skipper.FilterContext) {
	r := ctx.Response()
	r.StatusCode = 200
	r.Header.Set("Content-Type", "text/plain")
	r.Header.Set("Content-Length", strconv.Itoa(len(text)))
	r.Body.(io.Writer).Write([]byte(text))
}
Ejemplo n.º 2
0
// sets the configured header for the request
func (f *impl) Request(ctx skipper.FilterContext) {
	req := ctx.Request()
	if f.Key() == "Host" {
		req.Host = f.Value()
	}

	req.Header.Add(f.Key(), f.Value())
}
Ejemplo n.º 3
0
func (f *typ) Response(c skipper.FilterContext) {
	r := c.Request()
	p := r.URL.Path

	if len(p) < len(f.webRoot) {
		return
	}

	c.MarkServed()
	println("serving static", path.Join(f.root, p[len(f.webRoot):]))
	http.ServeFile(c.ResponseWriter(), c.Request(), path.Join(f.root, p[len(f.webRoot):]))
}
Ejemplo n.º 4
0
// rewrites the path of the filter
func (f *impl) Request(ctx skipper.FilterContext) {
	req := ctx.Request()
	req.URL.Path = string(f.rx.ReplaceAll([]byte(req.URL.Path), f.replacement))
}
Ejemplo n.º 5
0
func (h *typ) Response(ctx skipper.FilterContext) {
	ctx.Response().StatusCode = 200
}
Ejemplo n.º 6
0
func (f *Filter) Response(ctx skipper.FilterContext) {
	copyHeader(ctx.Response().Header, f.ResponseHeaders)
}
Ejemplo n.º 7
0
func (f *Filter) Request(ctx skipper.FilterContext) {
	copyHeader(ctx.Request().Header, f.RequestHeaders)
}
Ejemplo n.º 8
0
// sets the configured header for the response
func (f *impl) Response(ctx skipper.FilterContext) {
	ctx.Response().Header.Add(f.Key(), f.Value())
}