最近寫一個新的專案,測驗環境搭建下服務端向客戶端發送資料,并在頁面請求下相應這些資料,遇到請求發起后總是進入error函式,但資料在console.log后依然攜帶到客戶端了 ,查了很多資料,也咨詢了前端開發的好友,先總結一下解決辦法,因為我發送的是String型別回傳值,這是問題的前提
我是小菜,如果有錯誤,希望大神指點----
解決辦法一
1.在ajax請求中將 "dataType": "json"去掉,這種方式我測驗了,最簡單直接,或者將 "json",改為text
解決辦法二
1.在后端將String型別的回傳值做強制處理,轉為json格式字串,這里提到一點,@ResponseBody注解可以將我們后端回傳的型別轉為json型別,但String型別的回傳值卻不能實作,我查了一些大神的博客,具體原因我也很費解,如果有了解的大神可以@我,向老師學習,
@ResponseBody
@RequestMapping("/send/array.html")
public String testAjaxSendArray1(@RequestBody List<Integer> array){
logger = LoggerFactory.getLogger(TestSsmEnviroment.class);
for (Integer num : array) {
System.out.println("number"+num);
}
String msg="success";
String s = JSONUtils.toJSONString(msg);
return s;
}
解決方法三
1.在springmvc 組態檔中添加訊息轉換器,具體如下
<mvc:annotation-driven>
<!--配置mvc訊息轉換器-->
<mvc:message-converters>
<!--配置FastJson 用于支持將text/html輸出格式和application/json格式回應匹配-->
<bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json</value>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
另外,做一下遇到的另一個問題,頁面相應406,解決辦法也是如此,
學無止境,奮力前行,加油
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/241346.html
標籤:其他
上一篇:canvas--總結二
下一篇:HTML+CSS實作導航條
