我已经关注了这个关于用springdatarest配置swagger的链接。
据我所知,在SpringBoot中将swagger与SpringDataREST结合使用时,唯一需要做的就是向我的项目中添加以下依赖项:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
虽然我可以访问swagger,而且它在某种程度上起作用,但是存在一些问题:
在ui中,请求主体的模式和示例值没有按预期显示。spring数据rest默认使用hateoas,请求和响应应该采用hateoas定义的格式。
想象一下我有足够的资源 Item
具有以下定义的实体:
@Entity
@Data
public class Item {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String name;
@ManyToOne
@JoinColumn(name = "category_id")
private Category category;
@OneToMany(mappedBy = "item")
private Collection<Value> values;
}
下面是在swagger ui中为的请求体显示的内容 Item
资源:
但这是我应该发送到服务器的实际请求正文,以创建项的示例:
{
"name": "item1",
"category": "http://localhost:8080/categories/1"
}
那是虫子还是我做错了什么?
暂无答案!
目前还没有任何答案,快来回答吧!