为什么我会得到HttpMediaTypeNotAcceptableException?

时间:2015-05-15 06:14:46

标签: rest spring-boot

我有一个springboot休息控制器:

@RestController
public class UserController {
    @Autowired UserRepository userRepository;

    @RequestMapping(value = "/account/{userid:.+}", method = RequestMethod.GET)
    public HttpEntity<Account> getAccountByUserId(@PathVariable String userid) {
        if(userid == null) {
            return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
        }
        Account user = userRepository.findOneByUserid(userid.toLowerCase());
        if(user == null) {
            return new ResponseEntity<>(HttpStatus.NOT_FOUND);
        }
        return new ResponseEntity<>(user, HttpStatus.OK);
    }
}

注意@PathVariable定义有点奇怪,因为Spring MVC @PathVariable with dot (.) is getting truncated

此调用完美无缺,我收到了一个带有可爱json的200状态代码: http://.../account/scarlett.j@myplace.com

然而这个电话 http://.../account/scarlett.j@myplace.com.au 返回状态代码406和调试日志显示消息&#34; org.springframework.web.HttpMediaTypeNotAcceptableException:找不到可接受的表示&#34;

为什么以及如何修复它?感谢。

0 个答案:

没有答案