一 源碼位置
https://github.com/cakin24/spring-cloud-code/tree/master/ch17-2/ch17-2-4-gateway
https://github.com/cakin24/spring-cloud-code/tree/master/ch17-2/ch17-2-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 {
@Bean
public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
// 關鍵是下面這幾行代碼
return builder.routes()
.route("cookie_route", r -> r.cookie("chocolate", "ch.p")
.uri("http://localhost:8071/test/cookie"))
.build();
}
public static void main(String[] args) {
SpringApplication.run(SpringCloudGatewayApplication.class, args);
}
}
三 測試
1 啟動 ch17-2-4-gateway
2 啟動 ch17-2-service
3 Postman測試,界面如下圖: