diff --git a/protocol/dubbo/client.go b/protocol/dubbo/client.go index b11dd686b98ab5a4df3e3812d818de8654c450dd..344cc67c70d71daea668c4911ad18674a5fb217c 100644 --- a/protocol/dubbo/client.go +++ b/protocol/dubbo/client.go @@ -229,9 +229,9 @@ func (c *Client) call(ct CallType, addr string, svcUrl common.URL, method string rsp.reply = reply rsp.callback = callback rsp.opts = opts + } else { + p.Header.Type = hessian.PackageRequest } - // todo: it must be PackageRequest because of hessian2, but it is twoway actually - p.Header.Type = hessian.PackageRequest var ( err error diff --git a/protocol/dubbo/codec_test.go b/protocol/dubbo/codec_test.go index 8c3e5b18d9b80e7dcb176eb724a3340b067f9445..7ae227379afb79056b70564d1f3204d0606b1625 100644 --- a/protocol/dubbo/codec_test.go +++ b/protocol/dubbo/codec_test.go @@ -58,7 +58,7 @@ func TestDubboPackage_MarshalAndUnmarshal(t *testing.T) { pkgres.Body = make([]interface{}, 7) err = pkgres.Unmarshal(data) assert.NoError(t, err) - assert.Equal(t, hessian.PackageRequest|hessian.PackageRequest_TwoWay, pkgres.Header.Type) + assert.Equal(t, hessian.PackageRequest, pkgres.Header.Type) assert.Equal(t, byte(S_Dubbo), pkgres.Header.SerialID) assert.Equal(t, int64(10086), pkgres.Header.ID) assert.Equal(t, "2.5.4", pkgres.Body.([]interface{})[0])