don't marshal frame values
This commit is contained in:
parent
fa01ff6604
commit
45c986c5f1
@ -186,32 +186,30 @@ func (c *rpcCodec) Write(m *codec.Message, body interface{}) error {
|
|||||||
|
|
||||||
// if body is bytes Frame don't encode
|
// if body is bytes Frame don't encode
|
||||||
if body != nil {
|
if body != nil {
|
||||||
b, ok := body.(*raw.Frame)
|
if b, ok := body.(*raw.Frame); ok {
|
||||||
if ok {
|
|
||||||
// set body
|
// set body
|
||||||
m.Body = b.Data
|
m.Body = b.Data
|
||||||
body = nil
|
} else {
|
||||||
|
// write to codec
|
||||||
|
if err := c.codec.Write(m, body); err != nil {
|
||||||
|
return errors.InternalServerError("go.micro.client.codec", err.Error())
|
||||||
|
}
|
||||||
|
// set body
|
||||||
|
m.Body = c.buf.wbuf.Bytes()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(m.Body) == 0 {
|
|
||||||
// write to codec
|
|
||||||
if err := c.codec.Write(m, body); err != nil {
|
|
||||||
return errors.InternalServerError("go.micro.client.codec", err.Error())
|
|
||||||
}
|
|
||||||
// set body
|
|
||||||
m.Body = c.buf.wbuf.Bytes()
|
|
||||||
}
|
|
||||||
|
|
||||||
// create new transport message
|
// create new transport message
|
||||||
msg := transport.Message{
|
msg := transport.Message{
|
||||||
Header: m.Header,
|
Header: m.Header,
|
||||||
Body: m.Body,
|
Body: m.Body,
|
||||||
}
|
}
|
||||||
|
|
||||||
// send the request
|
// send the request
|
||||||
if err := c.client.Send(&msg); err != nil {
|
if err := c.client.Send(&msg); err != nil {
|
||||||
return errors.InternalServerError("go.micro.client.transport", err.Error())
|
return errors.InternalServerError("go.micro.client.transport", err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user