当Swagger存在时,ResourceSupport的行为会有所不同

时间:2018-05-24 13:44:15

标签: spring spring-mvc spring-boot swagger spring-hateoas

我有一个UserMetasource课程ResourceSupport(来自Spring Hateoas):

public class UserMetasource extends ResourceSupport {

    public UserMetasource() {
        this.add(linkTo(methodOn(UserController.class).getRoles("roles")));
    }

}

然后,在控制器中,我返回UserMetasource

@GetMapping("/usermeta")
public UserMetasource getUM() {
    return new UserMetasource();
}

这将返回此JSON:

{
  links: {
    roles: {
      href: "bla bla bla"
    }
  }
}

这么好,到目前为止。现在,我已将Swagger添加到我的项目中:

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.4.0</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.4.0</version>
</dependency>

我已经注释了端点:

@GetMapping("/usermeta")
@ApiOperation(value = "Get UM", response = UserMetasource.class)
public UserMetasource getUM() {
    return new UserMetasource();
}

现在,JSON返回的是这个:

{
  _links: {
    roles: {
      href: "bla bla bla"
    }
  }
}

请注意,_links以下划线开头。这是为什么?有可能避免这种情况吗?我希望links始终没有下划线。

0 个答案:

没有答案