我想记录所有请求以及对 db 的响应。我正在为此使用钩子。但看起来我无法在“onresponse”钩子中获取请求正文,它总是<<>>。在“onrequest”钩子中,我可以获得请求正文。
我的钩子定义为:
request_hook(Req) ->
%% All is OK: ReqBody contains what I sent:
{ok, ReqBody, Req2} = cowboy_req:body(Req),
io:format("request_hook: body = ~p", [ReqBody]),
Req2.
response_hook(_Status, _Headers, _Body, Req) ->
%% ReqBody is always <<>> at this point. Why?
{ok, ReqBody, Req2} = cowboy_req:body(Req),
io:format("response_hook: body = ~p", [ReqBody]),
Req2.
这是牛仔的错误还是正常行为?
我正在使用撰写本文时可用的最新牛仔(提交:aab63d605c595d8d0cd33646d13942d6cb372b60)。