Change HTTP method of request in-flight
#539 opened on Sep 11, 2018
Repository metrics
- Stars
- (4,284 stars)
- PR merge metrics
- (Avg merge 1d 21h) (18 merged PRs in 30d)
Description
I have a use-case for redirecting POST requests to /login to a static resource (the inescapable HTML Form of Doom) served by the gateway itself.
In the gateway, the best way I found to serve static resources is using the spring.webflux.static-path-pattern and spring.resources.static-locations properties, which delegate to the underpinning WebFlux framework. However, this will be able to serve only GET requests (besides HEAD and OPTIONS, which as expected return no content), while all other methods return 405.
Now, I would not say that accepting only GET is a wrong behavior for the serving of static resources. I would, however, appreciate the possibility of "normalizing" the request in the gateway before it lands on the underpinning WebFlux infrastructure, pretty much the same way we can modify a URI with org.springframework.cloud.gateway.route.builder.GatewayFilterSpec#changeRequestUri before it is forwarded to the other systems.
Any ideas?