How to get response body when using proxy_intercept_errors
Maxim Dounin
mdounin at mdounin.ru
Tue Jul 14 13:13:37 UTC 2020
Hello!
On Tue, Jul 14, 2020 at 04:25:46AM -0400, salmanpskply wrote:
> I have a requirement where when proxied response error code is 401
> (condition #1) and response body has text "SAML Token Expired" (condition
> #2), I need to intercept it and redirect to refresh token API.
>
> I could do it partially where only error code 401 is considered. Not able to
> find a way to read response body text to give condition #2:
There is no way. Errors are intercepted based on the response
headers, and the response body is not read from the upstream
server if the error is intercepted.
If you need to analyze the response body, consider using njs
instead. Doing appropriate subrequest and looking into it might
work for you, see here for details:
http://nginx.org/en/docs/http/ngx_http_js_module.html
http://nginx.org/en/docs/njs/reference.html#subrequest
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx
mailing list