add boolean for dumping HTTP bodies in hex format

This commit is contained in:
yungtravla 2019-08-01 17:45:16 +10:00 committed by GitHub
commit 5ab45693c5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -89,12 +89,21 @@ func (mod *EventsStream) dumpGZIP(body []byte) string {
buffer := bytes.NewBuffer(body) buffer := bytes.NewBuffer(body)
uncompressed := bytes.Buffer{} uncompressed := bytes.Buffer{}
reader, err := gzip.NewReader(buffer) reader, err := gzip.NewReader(buffer)
if err != nil { if mod.dumpFormatHex {
return mod.dumpRaw(body) if err != nil {
} else if _, err = uncompressed.ReadFrom(reader); err != nil { return mod.dumpRaw(body)
return mod.dumpRaw(body) } else if _, err = uncompressed.ReadFrom(reader); err != nil {
return mod.dumpRaw(body)
}
return mod.dumpRaw(uncompressed.Bytes())
} else {
if err != nil {
return mod.dumpText(body)
} else if _, err = uncompressed.ReadFrom(reader); err != nil {
return mod.dumpText(body)
}
return mod.dumpText(uncompressed.Bytes())
} }
return mod.dumpRaw(uncompressed.Bytes())
} }
func (mod *EventsStream) dumpJSON(body []byte) string { func (mod *EventsStream) dumpJSON(body []byte) string {
@ -149,7 +158,11 @@ func (mod *EventsStream) viewHttpRequest(e session.Event) {
} else if req.IsType("application/json") { } else if req.IsType("application/json") {
dump += mod.dumpJSON(req.Body) dump += mod.dumpJSON(req.Body)
} else { } else {
dump += mod.dumpRaw(req.Body) if mod.dumpFormatHex {
dump += mod.dumpRaw(req.Body)
} else {
dump += mod.dumpText(req.Body)
}
} }
} }