Spring Cloud Gateway内置过滤器实战——AddRequestHeader过滤器工厂

一 代码位置 https://github.com/cakin24/spring-cloud-code/tree/master/ch17-3/ch17-3-1

一 代码位置

https://github.com/cakin24/spring-cloud-code/tree/master/ch17-3/ch17-3-1-gateway

https://github.com/cakin24/spring-cloud-code/tree/master/ch17-3/ch17-3-service

二 关键代码

package cn.springcloud.book.gateway;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;@SpringBootApplication
public class SpringCloudGatewayApplication {@Beanpublic RouteLocator testRouteLocator(RouteLocatorBuilder builder) {// 关键代码下面几行return builder.routes().route("add_request_header_route", r ->r.path("/test").filters(f -> f.addRequestHeader("X-Request-Acme", "ValueB")).uri("http://localhost:8071/test/head")).build();}public static void main(String[] args) {SpringApplication.run(SpringCloudGatewayApplication.class, args);}
}

三 测试

1 启动ch17-3-1-gateway

2 启动ch17-3-service

3 浏览器输入: http://localhost:8080/test

4 页面显示

return head info:ValueB