fix: return error when receive HTTP code other than 2xx
This commit is contained in:
parent
b5ad5233a1
commit
262e68f7d2
|
@ -275,7 +275,7 @@ on_query(
|
|||
),
|
||||
NRequest = formalize_request(Method, BasePath, Request),
|
||||
case
|
||||
Result = ehttpc:request(
|
||||
ehttpc:request(
|
||||
case KeyOrNum of
|
||||
undefined -> PoolName;
|
||||
_ -> {PoolName, KeyOrNum}
|
||||
|
@ -286,33 +286,35 @@ on_query(
|
|||
Retry
|
||||
)
|
||||
of
|
||||
{error, Reason} ->
|
||||
{error, Reason} = Result ->
|
||||
?SLOG(error, #{
|
||||
msg => "http_connector_do_request_failed",
|
||||
request => NRequest,
|
||||
reason => Reason,
|
||||
connector => InstId
|
||||
});
|
||||
{ok, StatusCode, _} when StatusCode >= 200 andalso StatusCode < 300 ->
|
||||
ok;
|
||||
{ok, StatusCode, _, _} when StatusCode >= 200 andalso StatusCode < 300 ->
|
||||
ok;
|
||||
{ok, StatusCode, _} ->
|
||||
}),
|
||||
Result;
|
||||
{ok, StatusCode, _} = Result when StatusCode >= 200 andalso StatusCode < 300 ->
|
||||
Result;
|
||||
{ok, StatusCode, _, _} = Result when StatusCode >= 200 andalso StatusCode < 300 ->
|
||||
Result;
|
||||
{ok, StatusCode, Headers} ->
|
||||
?SLOG(error, #{
|
||||
msg => "http connector do request, received error response",
|
||||
request => NRequest,
|
||||
connector => InstId,
|
||||
status_code => StatusCode
|
||||
});
|
||||
{ok, StatusCode, _, _} ->
|
||||
}),
|
||||
{error, #{status_code => StatusCode, headers => Headers}};
|
||||
{ok, StatusCode, Headers, Body} ->
|
||||
?SLOG(error, #{
|
||||
msg => "http connector do request, received error response",
|
||||
request => NRequest,
|
||||
connector => InstId,
|
||||
status_code => StatusCode
|
||||
})
|
||||
end,
|
||||
Result.
|
||||
}),
|
||||
{error, #{status_code => StatusCode, headers => Headers, body => Body}}
|
||||
end.
|
||||
|
||||
on_query_async(InstId, {send_message, Msg}, ReplyFunAndArgs, State) ->
|
||||
case maps:get(request, State, undefined) of
|
||||
|
|
Loading…
Reference in New Issue