我正在使用Spring并尝试在我的控制器中对@ResponseBody进行ajax调用.
UPDATE
好的,我把我告诉的更改添加到了我的ajax设置中.
我的参数“jtSearchParam”在IE中仍然存在相同的编码问题.
我得到了另一个错误,406,响应Header的内容类型错误.
这是我的新代码
控制器:
@RequestMapping(method = RequestMethod.POST,consumes="application/json; charset=utf-8",produces="application/json; charset=utf-8")
public @ResponseBody JSONObject getUsers(@RequestParam int jtStartIndex,@RequestParam int jtPageSize,@RequestParam String jtSorting,@RequestParam String jtSearchParam,HttpServletRequest request,HttpServletResponse response) throws JSONException{
Gson gson = new GsonBuilder()
.setExclusionStrategies(new UserExclusionStrategy())
.create();
List
所以当你看到我在产品中设置内容类型但这没有帮助.
如果我调试响应头它看起来像这样:
(这会导致浏览器无法接受406)
我的新ajax设置:
...
headers: {
Accept : "application/json; charset=utf-8","Content-Type": "application/json; charset=utf-8"
},contentType: "application/json; charset=utf-8",mimeType:"application/json; charset=UTF-8",cache:false,type: 'POST',dataType: 'json'
...
我的参数在IE中看起来仍然一样!