Closed groovili closed 8 months ago
LGTM as well @jaitaiwan . @groovili thanks for the contribution! Do you mind resolving your branch conflicts so we can go ahead and merge this? Thanks!
@AlexVulaj @jaitaiwan thanks for the review! Merged with latest changes and updated the CL to not use deprecated ioutil
. Please take another look to proceed with merging.
Attention: Patch coverage is 64.15094%
with 19 lines
in your changes are missing coverage. Please review.
Project coverage is 71.70%. Comparing base (
39123e3
) to head (422b3f1
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Hi!
This PR gives users the ability to access and change
request.Body
in functions registered withRegisterInterceptFunc
andRegisterBeforeFunc
. I've already described it in issue #80. Also, I've added couple of simple tests to check ability to change request data in these functions.Changes:
request.Body
after the execution ofbeforeFunc
's andinterceptFunc
's. Update codec request info after calls to functions above.bytes.Buffer
andrequest.Body
for underlying functions in v2/json, v2/json2 and v2/protorpc codecs.Of course, exists a better way to do that, but it will require changes in the signature of
RegisterInterceptFunc
andRegisterBeforeFunc
and it would be breaking changes. If both of these methods will have an original*http.Request
as input parameter, they could be executed before the creation of codec. In this case, users can access and alter request data, and only after that it would be read by the codec and marshaled to service request params. But since these changes are breaking, it's not an option at the moment, probably it can fit the next version or release.Would be nice to know your opinion, thanks!