spring-cloud / spring-cloud/spring-cloud-gateway
Redis rate limiter - support for 'Retry-After' response header
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 4.9k
- Forks
- 3.5k
- Avg merge
- 20h 57m
- Merged PRs (30d)
- 8
Description
I would like to set header 'Retry-After' in the response header when the request is refused by Redis rate limiter.
I tried to implement own filter to add 'Retry-After' header. But unfortunately the request is finished using setCompleted() method in the RequestRateLimiterGatewayFilterFactory.
Is there any way how to set the header Retry-After please?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with RequestRateLimiterGatewayFilterFactory and trace the setCompleted() path used when Redis refuses a request. Determine how the Retry-After response header can be exposed there, then verify that refused requests include the header without breaking completion behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, redis, spring, spring-boot
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100