in whisk/client.go [467:499]
func PrintRequestInfo(req *http.Request, secretToObfuscate ...ObfuscateSet) (*http.Request, error) {
var truncatedBody string
var err error
if IsVerbose() {
fmt.Println("REQUEST:")
fmt.Printf("[%s]\t%s\n", req.Method, req.URL)
if len(req.Header) > 0 {
fmt.Println("Req Headers")
PrintJSON(req.Header)
}
if req.Body != nil {
fmt.Println("Req Body")
// Since we're emptying out the reader, which is the req.Body, we have to reset it,
// but create some copies for our debug messages.
buffer, _ := ioutil.ReadAll(req.Body)
obfuscatedRequest := ObfuscateText(string(buffer), secretToObfuscate)
req.Body = ioutil.NopCloser(bytes.NewBuffer(buffer))
if !IsDebug() {
if truncatedBody, req.Body, err = BodyTruncator(ioutil.NopCloser(bytes.NewBuffer(buffer))); err != nil {
return nil, err
}
fmt.Println(ObfuscateText(truncatedBody, secretToObfuscate))
} else {
fmt.Println(obfuscatedRequest)
}
Debug(DbgInfo, "Req Body (ASCII quoted string):\n%+q\n", obfuscatedRequest)
}
}
return req, nil
}