如何解決ajax在google chrome瀏覽器上失效
問題分析:我的ajax的代碼在IE瀏覽器,360的IE核心的瀏覽器,以及在火狐都是運(yùn)行正常的,但是在GOOGLE CHROME下卻讓我非常頭疼,總是沒有顯示正確結(jié)果。
我本機(jī)的開發(fā)環(huán)境如下:
google chrome 版本 28.0.1469.0m
服務(wù)器Tomcat6.0
服務(wù)器端Spring MVC 的代碼如下:
控制器部分:
@RequestMapping(value="/searchRecordBlackListByCardId.json")
public String searchRecordBlackListByCardId(HttpServletRequest request,HttpServletResponse response,String cardId,ModelMap mm){
response.setContentType("application/json;charset=UTF-8");
PwCardSpeciallist pcs = blackListService.getRecordBlackListByCardId(cardId);
mm.addAttribute("pwCardSpeciallist", pcs);
return "jsonView";
}
xxx-Servlet.XML配置部分:
<bean id="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView"/> <bean id="beanNameResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver"> <property name="order" value="0" /> </bean> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:viewClass="org.springframework.web.servlet.view.JstlView" p:order="100" p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" />
前臺頁面部分:
<script type="text/javascript">
$(document).ready(function(){
$("#searchBlack").click(function(){
$.get('${requestScope.basePath}searchRecordBlackListByCardId.json', {
cardId : encodeURI( '123456789' )
}, function (data, textStatus){
alert(data.pwCardSpeciallist.cardId);
},'json');
return false;
})
});
</script>
對于上面出現(xiàn)的問題,給出三個(gè)截圖,大家就能知道為什么了。。。。
第一張,使用localhost:8080/cardDemo/searchRecordBlackList.html#地址訪問的時(shí)候:

第二張,使用127.0.0.1:8080:8080/cardDemo/searchRecordBlackList.html#訪問的時(shí)候:

第三張,使用我的本機(jī)IP訪問的時(shí)候192.168.1.100:8080/cardDemo/searchRecordBlackList.html#

原來,google chrome是由于某種安全策略的需要,禁止訪問本地的ajax資源!這個(gè)還是有點(diǎn)坑爹,畢竟我之前所在那個(gè)公司在某些項(xiàng)目上號稱“只支持GOOGLE CHROME瀏覽器的”。
這個(gè)故事告訴我們....在以后調(diào)試的時(shí)候,要盡量使用本機(jī)IP來訪問SERVER端,而不要使用127.0.0.1或者是localhost,這樣就不會像我一樣花費(fèi)好幾個(gè)小時(shí)的時(shí)間去尋找這個(gè)錯誤。
相關(guān)文章
如何創(chuàng)建ajax對象并兼容多個(gè)瀏覽器
這篇文章主要介紹了創(chuàng)建ajax對象并兼容多個(gè)瀏覽器方法簡單記錄,在某些情況下還是比較實(shí)用的,需要的朋友可以參考下2014-08-08
ie發(fā)送ajax請求返回上一次結(jié)果的解決方法
這篇文章主要介紹了ie發(fā)送ajax請求返回上一次結(jié)果的解決方法,需要的朋友可以參考下2014-03-03
Ajax 實(shí)現(xiàn)網(wǎng)站劫持的檢測方法
https可以徹底解決劫持的問題。但是一般虛擬主機(jī)都不支持 https,難道http只能任流氓們惡意劫持么?下面通過本文給大家介紹Ajax 實(shí)現(xiàn)網(wǎng)站劫持的檢測方法,需要的朋友可以參考下2017-08-08
ajax處理服務(wù)器返回的三種數(shù)據(jù)類型方法
這篇文章主要介紹了ajax如何處理服務(wù)器返回的三種數(shù)據(jù)類型,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
使用$.get()根據(jù)選項(xiàng)的不同從數(shù)據(jù)庫異步請求數(shù)據(jù)
本例實(shí)現(xiàn)的是這樣的一個(gè)效果:當(dāng)從select下拉框選擇編程語言時(shí)時(shí),根據(jù)選項(xiàng)的不同,異步請求不同的函數(shù)API描述,需要的朋友可以參考下2014-04-04

