|
|
@@ -104,16 +104,30 @@ func fetchHTTPContent(target string) ([]byte, error) {
|
|
|
}
|
|
|
|
|
|
func showResponese(m proto.Message) {
|
|
|
+ if isNil(m) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ b := new(bytes.Buffer)
|
|
|
+ e := json.NewEncoder(b)
|
|
|
+ e.SetIndent("", " ")
|
|
|
+ e.SetEscapeHTML(false)
|
|
|
+ err := e.Encode(m)
|
|
|
msg := ""
|
|
|
- bs, err := proto.Marshal(m)
|
|
|
if err != nil {
|
|
|
- msg = err.Error()
|
|
|
+ msg = fmt.Sprintf("error: %s\n\n%v", err, m)
|
|
|
} else {
|
|
|
- msg = string(bs)
|
|
|
- msg = strings.TrimSpace(msg)
|
|
|
+ msg = strings.TrimSpace(b.String())
|
|
|
}
|
|
|
if msg == "" {
|
|
|
return
|
|
|
}
|
|
|
fmt.Println(msg)
|
|
|
}
|
|
|
+
|
|
|
+func isNil(i interface{}) bool {
|
|
|
+ vi := reflect.ValueOf(i)
|
|
|
+ if vi.Kind() == reflect.Ptr {
|
|
|
+ return vi.IsNil()
|
|
|
+ }
|
|
|
+ return i == nil
|
|
|
+}
|