func (b *ZBody) Read(p []byte) (int, error) {
	if b.Err != nil {
		return 0, b.Err
	}
	return b.rawBody.Read(p)
}
Read is the implementation of the reader interface
package zhttp
import (
	"bytes"
	"context"
	"io"
	"io/ioutil"
	"net/http"
	"net/http/httputil"
	"strings"
)
type ZBody struct {
	rawBody   io.ReadCloser
	buf       bytes.Buffer
	bufCached bool
	Err       error
}