package server import ( "bytes" "compress/gzip" ) func Compress(data []byte) []byte { var b bytes.Buffer w := gzip.NewWriter(&b) w.Write(data) w.Close() return b.Bytes() } func Decompress(data []byte) ([]byte, error) { b := bytes.NewBuffer(data) r, err := gzip.NewReader(b) if err != nil { return nil, err } var w bytes.Buffer _, err = w.ReadFrom(r) if err != nil { return nil, err } return w.Bytes(), nil }