使用/{repository}/search/{method}
搜索方法之一执行搜索时,如果搜索参数导致结果为空,则响应为空体。这可能会导致Ajax应用程序出现问题,该应用程序始终需要值JSON响应。有没有办法返回空JSON响应而不是返回任何内容。以下是我所说的Repository
定义的类型。
public UserRepository extends PagingAndSortingRespository<User, Long>
{
public User findByUsername(@Param("username")String username);
}
在上文中,如果您执行/users/search/findByUsername?username=foobar
,您将获得状态代码为200的空响应。我想要做的是返回一个身份为{}
的200状态代码
理想情况下,我不希望重写控制器处理并重新实现SDR已经提供的所有工作。
答案 0 :(得分:1)
通过设计,SDR正在以正确的方式行事。但是,如果您需要始终响应(空或某些结果),请更改搜索方法的定义以返回集合。像下面的东西,并在客户端做必要的工作。
public UserRepository extends PagingAndSortingRespository<User, Long>
{
public List<User> findByUsername(@Param("username")String username);
}