【问题标题】:Document custom annotation in spring rest docs在 spring rest docs 中记录自定义注释
【发布时间】:2020-07-22 13:48:26
【问题描述】:

如果他们使用一堆自定义注释(例如用户角色),我必须将 spring rest 文档集成到遗留项目中。 spring rest docs 中有没有办法记录这个注释?

【问题讨论】:

  • 你能稍微扩展一下注释的作用吗? REST Docs 在 HTTP 请求和响应级别工作。记录注释将取决于它对这些请求和响应的影响。
  • 我知道它是如何工作的,但我不同意我公司选择的方法。基本上他们想要的是记录一个类似于@PreAuthorize spring security 之一的自定义注释。有一个注释确定用户必须具有访问特定端点的角色。有没有办法记录这样的事情?

标签: spring-restdocs


【解决方案1】:

Spring REST Docs 在 HTTP 请求和响应级别工作。按照设计,它对注释或如何处理这些请求以及如何创建响应一无所知。这可确保您记录的内容与通过 HTTP 与您的服务交互的客户端处于同一级别。

如果您想包含有关@PreAuthorize 的信息或类似的注释,您必须自己编写一些内容来执行此操作。如果你想适应 REST Docs 的做事方式,你可以实现一个自定义的Snippet,它配置了一个类或方法,它使用反射从中提取注释并从中生成一些文档。

【讨论】:

  • 这就是我实现它的方式。但目前我必须配置我的测试以了解我正在测试的女巫类和方法。你知道是否有办法在 Snippet 类中提取它?
猜你喜欢
  • 2016-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-03
  • 2021-12-06
相关资源
最近更新 更多