Document updated on May 12, 2023
Handling Client Redirects
When a backend returns a redirect, the default behavior of KrakenD is to follow the redirection and serve the final content to the user. When you don’t want this behavior and let the end client follow the redirect, you must enable the no_redirect
HTTP client option.
No redirect configuration
The no_redirect
option is one in the list of HTTP client options in the backend.
By enabling the flag, you can stop KrakenD from following redirections like a 301
.
20x
) code.Example of configuration:
{
"version": 3,
"endpoints": [
{
"endpoint": "/redirect",
"output_encoding": "no-op",
"backend": [
{
"url_pattern": "/__debug",
"encoding": "no-op",
"extra_config": {
"backend/http/client": {
"no_redirect": true
}
}
}
]
}
]
}
Migration from old plugin
Prior to v2.3 the no-redirect
plugin offered this functionality, and is now deprecated as it is supported natively. If you used the plugin you will need to execute the following change in your configuration:
"extra_config": {
- "plugin/http-client": {
- "name": "no-redirect"
+ "backend/http/client": {
+ "no_redirect": true
}
}