dubbo-go-hessian2 icon indicating copy to clipboard operation
dubbo-go-hessian2 copied to clipboard

Decode from tcp stream

Open evanzhang87 opened this issue 1 year ago • 1 comments

What would you like to be added: I hope HessianCodec can read message from stream, which means body can be from different packet. Why is this needed:

background

We use gopacket to parse packet from The 4th layer, and then build a 7th layer request(HTTP) to do some interesting things. We want to do the same thing for Dubbo. We already realized a way to parse Dubbo header, but now we want to parse body.

what we want

Like HTTP, a dubbo request/response can also be divided into different packets, but HessianCodec can just parse req/res from a complete packet .

	if h.reader.Buffered() < h.bodyLen {
		return ErrBodyNotEnough
	}

However, reader can get remaining body from the next packet. If possible, I'd like to contribute code for this.

evanzhang87 avatar Jan 19 '24 09:01 evanzhang87

@evanzhang87 it's a great enhancement, contributions are welcome ~

tiltwind avatar Jan 23 '24 09:01 tiltwind