对于我们的 REST api,我们已标准化使用连字符大小写 IE。
GET /store-users?first-name=dan
而不是 GET /storeUsers?firstName=dan
当开发人员不断向应用程序添加不合规的 URL 时,我们如何强制执行此命名约定。 对可能导致 Maven 构建失败的 Spring Rest 控制器注释进行一些静态分析是理想的选择。
一个简单的单元测试应该做:
@Autowired
private ApplicationContext applicationContext;
@Test
public void allEndpointsShouldBeKebabCase() {
RequestMappingHandlerMapping requestMappingHandlerMapping = applicationContext.getBean(RequestMappingHandlerMapping.class);
var methodMap = requestMappingHandlerMapping.getHandlerMethods();
//Insert your endpoint path checks here
}