406无法接受:春季3.2 + JSON + AJAX(406 Not Acceptable: Sp

2019-08-18 02:43发布

搜索吨的网站,甚至计算器,但还没有找到一个解决这个问题。 貌似很多人都遇到过这个问题,但它似乎是一个统一的解决方案却丢失了包含所有方面。 已经在其斥资15天。

我看到的方法调用得到的地方,但@ResponseBody是没有得到正确转换。 有人可以来看看,让我知道是什么问题。 我已上载在GitHub上的代码。 链接到GitHub上的源代码

@RequestMapping(value = "/find_user", method = RequestMethod.GET)
public @ResponseBody List<String> findUser(@RequestParam("term") String name) {
    log.info("Search string for user name: " + name);   
    List<String> users = new ArrayList<String>();
    users.add("Sam");
    users.add("Dan");
    return users;
}

浏览器的屏幕,406以下的回应射击

请注意:啊! 多么痛苦。 这种安装方法的效果与Spring 3.1.4,而不是与3.2.X

Answer 1:

上帝,这几乎杀了我。 我试着尽我所能,还是卡在那里。 但最后我想通了。 原因是春天,春天下载3.1.1,并与3.1.1jars替换所有的罐子,和它的作品。 你所有的配置还是不错的。



Answer 2:

我也遇到了一个同样的问题。 调试春天之后,我发现ServletPathExtensionContentNegotiationStrategy试图基于URL的扩展名来确定介质类型。 (也许,因为它无法推断出介质类型,它应该返回Accept含有头*/*在我的情况。)

所以,解决这个问题的方法之一是通过替换重命名映射URL .html通过.json



文章来源: 406 Not Acceptable: Spring 3.2 + JSON + AJAX