1 Star 0 Fork 0

zhuchance/kubernetes

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
Clone or Download
responses.go 1.23 KB
Copy Edit Raw Blame History
Andy Goldstein authored 2015-08-27 10:19 . Add goproxy test image
package goproxy
import (
"bytes"
"io/ioutil"
"net/http"
)
// Will generate a valid http response to the given request the response will have
// the given contentType, and http status.
// Typical usage, refuse to process requests to local addresses:
//
// proxy.OnRequest(IsLocalHost()).DoFunc(func(r *http.Request, ctx *goproxy.ProxyCtx) (*http.Request,*http.Response) {
// return nil,NewResponse(r,goproxy.ContentTypeHtml,http.StatusUnauthorized,
// `<!doctype html><html><head><title>Can't use proxy for local addresses</title></head><body/></html>`)
// })
func NewResponse(r *http.Request, contentType string, status int, body string) *http.Response {
resp := &http.Response{}
resp.Request = r
resp.TransferEncoding = r.TransferEncoding
resp.Header = make(http.Header)
resp.Header.Add("Content-Type", contentType)
resp.StatusCode = status
buf := bytes.NewBufferString(body)
resp.ContentLength = int64(buf.Len())
resp.Body = ioutil.NopCloser(buf)
return resp
}
const (
ContentTypeText = "text/plain"
ContentTypeHtml = "text/html"
)
// Alias for NewResponse(r,ContentTypeText,http.StatusAccepted,text)
func TextResponse(r *http.Request, text string) *http.Response {
return NewResponse(r, ContentTypeText, http.StatusAccepted, text)
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/meoom/kubernetes.git
git@gitee.com:meoom/kubernetes.git
meoom
kubernetes
kubernetes
v1.2.2-beta.0

Search

Cb406eda 1850385 E526c682 1850385