项目中遇到问题,在wifi认证页面中有一个5秒的定时检查,链接终端用户是否合法,其中使用jquery get请求,如下代码:
$.ajax({
type: "GET",cache:false,
url: "<%=basePath%>interface/checkImplicit",//这里使用绝对路径会有跨域问题
data: { mac: "<%=mac%>", gw_id: "<%=gw_id%>" },
dataType: "json",
success: function(data){
if(data.code == 1){//已经认证过
//清除循环定时
window.clearInterval(f);
$("#img_wifi_link_ok").removeAttr("src");
$("#img_wifi_link_ok").attr("src","<%=basePath%>sources/images5/wifi_link_ok.jpg");
}
}
});
}
以上代码,部署到内网开发环境上,是正常的,但部署到线上环境,回调函数就一直无法得到响应数据(json),用浏览器调试无法得到响应信息。
$.ajax({
type: "GET",cache:false,
url: "../checkImplicit",//这里使用相对路径
data: { mac: "<%=mac%>", gw_id: "<%=gw_id%>" },
dataType: "json",
success: function(data){
if(data.code == 1){//已经认证过
//清除循环定时
window.clearInterval(f);
$("#img_wifi_link_ok").removeAttr("src");
$("#img_wifi_link_ok").attr("src","<%=basePath%>sources/images5/wifi_link_ok.jpg");
}
}
});
}
如上url使用相对路径后,问题解决,响应数据正常得到,流程正常。