java項目中用ajax傳遞json,返回前台時中文出現問號(亂碼問題)的解決辦法
首先看一下沒有解決前的狀態:
我用的框架是ssm,在springMVC中我配置了編碼格式為utf-8,每個jsp頁面也用了utf-8,
在利用ajax向后台提交的時候也定義了dataType: applicaption / json,但返回到前台依舊是問號,后台顯示沒有問題
后來找資料,才發現了問題的所在:
因為在controller中返回json用了@ResponseBody,而spring源碼中@ResponseBody 的實現類發現其默認的編碼是 iso-8859-1,而項目用的編碼為utf-8,所以傳中文會出現亂碼。
這里我的解決方法是:
@RequestMapping(value = "/login" , method = RequestMethod.POST , produces = "application/json; charset=utf-8") @ResponseBody
之后看返回前台的json
所以這個問題也就解決了!歡迎閱讀本文,如果有什么問題可以留言,爭取第一時間回復你,謝謝!