如何忽略 @FeignClient api 被 swagger 处理?
How to ignore @FeignClient apis from being processed by swagger?
我在一个项目中使用 swagger 和 Feign,而 swagger 将采用 @RequestMapping
注释方法并创建文档。但是对于由 @FeightClient
和 @RequestMapping
注释的 classes 和方法这样做很奇怪。那么如何大摇大摆地忽略这些api呢?哪个class招摇
做扫描工作,这样我就可以学习并添加一些其他 class 来忽略这些由 @FeightClient
?
注释的 api
@FeignClient(name = TodoItemRpcRepository.SERVICE_NAME)
@RequestMapping("/api/todos")
public interface TodoItemRpcRepository {
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
TodoItem findById(@RequestHeader("X-Auth-Token") final String token, //
@PathVariable("id") final Long id);
}
在您的摘要中 select
您可以指定谓词。您可以使用 withClassAnnotation 方法将 @FeignClient
指定为注释。你需要将它与 Predicates.not
结合起来以忽略你的情况。
我删除了 @FeignClient
注释 class 上的 @RequestMapping
并在 @FeignClient
中添加了一个 path
属性。这一次,问题得到了完美的解决。我猜 @RequestMapping
不允许 @FeignClient
注释 class.
@FeignClient(name = TodoItemRpcRepository.SERVICE_NAME, name="/api/todos")
public interface TodoItemRpcRepository {
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
TodoItem findById(@RequestHeader("X-Auth-Token") final String token, //
@PathVariable("id") final Long id);
}
我在一个项目中使用 swagger 和 Feign,而 swagger 将采用 @RequestMapping
注释方法并创建文档。但是对于由 @FeightClient
和 @RequestMapping
注释的 classes 和方法这样做很奇怪。那么如何大摇大摆地忽略这些api呢?哪个class招摇
做扫描工作,这样我就可以学习并添加一些其他 class 来忽略这些由 @FeightClient
?
@FeignClient(name = TodoItemRpcRepository.SERVICE_NAME)
@RequestMapping("/api/todos")
public interface TodoItemRpcRepository {
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
TodoItem findById(@RequestHeader("X-Auth-Token") final String token, //
@PathVariable("id") final Long id);
}
在您的摘要中 select
您可以指定谓词。您可以使用 withClassAnnotation 方法将 @FeignClient
指定为注释。你需要将它与 Predicates.not
结合起来以忽略你的情况。
我删除了 @FeignClient
注释 class 上的 @RequestMapping
并在 @FeignClient
中添加了一个 path
属性。这一次,问题得到了完美的解决。我猜 @RequestMapping
不允许 @FeignClient
注释 class.
@FeignClient(name = TodoItemRpcRepository.SERVICE_NAME, name="/api/todos")
public interface TodoItemRpcRepository {
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
TodoItem findById(@RequestHeader("X-Auth-Token") final String token, //
@PathVariable("id") final Long id);
}