我正在使用Spring Boot Spring DATA REST和Swagger(Springfox 2.7.0) . Spring DATA REST遵循HATEOAS原则,因此id字段永远不会出现在返回资源中 . 在GET方法中,这可以正常工作,但在POST方法中,表单显示了一个id参数,我不明白它来自哪里 .

这是Swagger ui的截图 . 如您所见,表单包含一个类型为path的id参数,该参数在模型定义中不存在 .

我确定它不需要,事实上通过Postman做一个请求,它没有set id param . 同样在招摇过程中一切正常,用随机值填充id参数 .

它是Spring DATA REST和Swagger之间的不兼容还是我应该设置更多内容?我按照这里的说明操作:http://springfox.github.io/springfox/docs/current/#support-for-spring-data-rest

enter image description here

===================更新==============================

SpringFox版本> 2.7.0中已解决此问题 . 这里是bug的链接:https://github.com/springfox/springfox/issues/1839