我是整个javascript / jquery / ajax场景的新手。我有一个我在个人计算机上使用以下jquery ajax脚本开发的网站。它在我的机器上运行得很好,但是当我将它上传到服务器时,没有任何反应。
$.post(
"action URL here",
{
lat_max: params.lat_max,
lat_min: params.lat_min,
lng_max: params.lng_max,
lng_min: params.lng_min,
building_residents: params.building_residents,
building_type: params.building_type
},
function(json) {
buildings = json;
updateMarkers();
if(polygons.length > 0){
for(var i = 0; i < poly_buildings.length; i++){
buildPolyBuildings();
}
}else{
showAllMarkers();
}
filterResults();
},
"json"
);
我已经在这个问题上打了几个小时了,我剩下的唯一想法是处理我不理解的事情 - 请求/响应标题。当我在我的实际站点上运行此脚本时,Firebug中的请求/响应头部分下没有任何内容。但是,当我在本地运行它时,有很多东西。我没得到什么?
有人要求查看标题中的差异。这是我在开发服务器上得到的内容:
ResponseHeaders
Date Tue, 20 Dec 2011 20:45:07 GMT
X-Powered-By PHP/5.3.6
Transfer-Encoding chunked
Connection Keep-Alive
Server Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8r DAV/2 PHP/5.3.6
Content-Type text/html
Keep-Alive timeout=5, max=100
RequestHeaders
Content-Type application/x-www-form-urlencoded
Accept application/json, text/javascript, */*; q=0.01
X-Requested-With XMLHttpRequest
这就是我在实时服务器上获得的内容:
ResponseHeaders
RequestHeaders
Content-Type application/x-www-form-urlencoded
Accept application/json, text/javascript, */*; q=0.01
再次 - 我不知道这是问题所在,但这是我在两种环境中可以看到的唯一功能差异。
答案 0 :(得分:1)
您是否可以访问新服务器上的错误日志?我最近遇到了类似于你的问题,事实证明新服务器上的php配置与旧服务器上的版本不同,这意味着我通过AJAX打的页面失败了(并且没有发回响应)。这也可能导致你的问题。
答案 1 :(得分:1)
我弄清楚发生了什么事。事实证明,我要去的域名前面没有“www” - 我要去裸域。它在代码中引用的url在它前面有“www”子域。它解决了一切。谢谢你的帮助!