diff --git a/dubbo/client.go b/dubbo/client.go
index 48d44f071a0b57fcd47b8a6a8456df92b7c32368..08e0a72a3607c07c85c34553f82a15cba7e16567 100644
--- a/dubbo/client.go
+++ b/dubbo/client.go
@@ -158,7 +158,7 @@ func (c *Client) call(ct CallType, addr string, svcUrl registry.ServiceURL, meth
 	p.Service.Method = method
 	p.Service.Timeout = opts.RequestTimeout
 	if opts.SerialID == 1 || opts.SerialID == 3 || opts.SerialID == 4 || opts.SerialID == 5 || opts.SerialID == 6 ||
-		opts.SerialID == 7 || opts.SerialID == 8 {
+		opts.SerialID == 7 {
 		p.Header.SerialID = byte(S_Default)
 	} else {
 		p.Header.SerialID = byte(opts.SerialID)
diff --git a/dubbo/codec.go b/dubbo/codec.go
index ae35de2715fe898c92255356909f511c4089e481..5b3bbb3737fc149e0dddb7c0169846b4d2362b7f 100644
--- a/dubbo/codec.go
+++ b/dubbo/codec.go
@@ -69,7 +69,7 @@ func (p *DubboPackage) Unmarshal(buf *bytes.Buffer, pkgType hessian.PackgeType)
 }
 
 func (p *DubboPackage) ReadBody(body interface{}) error {
-	err := p.Codec.ReadBody(&body)
+	err := p.Codec.ReadBody(body)
 	return jerrors.Trace(err)
 }