fix(gateway): 补充预检请求标识过滤器

This commit is contained in:
2026-07-31 18:24:48 +08:00
parent 9a37657148
commit b1d4ef39e2
5 changed files with 150 additions and 1 deletions
@@ -0,0 +1,37 @@
package com.baiyue.gateway.config;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.cloud.gateway.config.GatewayProperties;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest(properties = {
"spring.cloud.nacos.discovery.enabled=false",
"spring.cloud.nacos.discovery.register-enabled=false",
"spring.cloud.nacos.config.enabled=false",
"spring.cloud.gateway.discovery.locator.enabled=false",
"baiyue.security.jwt-secret=test-jwt-secret-at-least-32-bytes-long"
})
class GatewayFileRouteConfigurationTest {
@Autowired
private GatewayProperties gatewayProperties;
@Test
void qualificationRequestsRouteToRegisteredFileServiceName() {
var route = gatewayProperties.getRoutes().stream()
.filter(candidate -> "file-service".equals(candidate.getId()))
.findFirst()
.orElseThrow();
assertThat(route.getUri().toString()).isEqualTo("lb://file-service");
assertThat(route.getPredicates()).singleElement().satisfies(predicate -> {
assertThat(predicate.getName()).isEqualTo("Path");
String paths = String.join(",", predicate.getArgs().values());
assertThat(paths)
.contains("/api/merchant/v1/files/**")
.contains("/api/platform/v1/files/**");
});
}
}