我关注了这个博客并创建了一些微服务:Eureka-server、Auth-service、Zuul-service、Gallery-service、Image-service。从画廊服务中,我想使用 Feign-Client 调用 auth-service API 该 url 不需要身份验证,但客户端抛出 FeignException$Unauthorized 我正在使用 JWT 令牌进行身份验证。
//AuthServerProxy.java
@FeignClient(name = "auth-service")
@RibbonClient(name = "auth-service")
public interface AuthServiceProxy {
@PostMapping("/auth/authenticate")
public ResponseEntity<?> authenticate(@RequestBody UserEntity userEntity);
@GetMapping("/auth/register")
public String test();
}
Run Code Online (Sandbox Code Playgroud)
控制器 - 画廊服务
@Autowired
AuthServiceProxy authServiceProxy;
@GetMapping("/test")
public String test(){
UserEntity userEntity = new UserEntity();
userEntity.setUsername("admin");
userEntity.setPassword("admin");
ResponseEntity<?> responseEntity = authServiceProxy.authenticate(userEntity);
System.out.println(responseEntity.getStatusCode());
return responseEntity.toString();
}
@GetMapping("/test/str")
public String testStr(){
return authServiceProxy.test();
}
Run Code Online (Sandbox Code Playgroud)
安全配置 - ZuulServer、Auth-Service
.antMatchers(HttpMethod.POST, "/auth/authenticate").permitAll()
Run Code Online (Sandbox Code Playgroud)
这是错误日志
ERROR 1123 --- [nio-8100-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : …Run Code Online (Sandbox Code Playgroud)