Javascript 400将应用程序从本地移动到web服务器时出现错误请求
我有一个在本地服务器上完美运行的金字塔应用程序,但当我将其移动到web服务器(Dreamhost)时,会出现以下错误:Javascript 400将应用程序从本地移动到web服务器时出现错误请求,javascript,python,web-hosting,Javascript,Python,Web Hosting,我有一个在本地服务器上完美运行的金字塔应用程序,但当我将其移动到web服务器(Dreamhost)时,会出现以下错误: 400 Bad Request: Bad request (GET and HEAD requests may not contain a request body) 所讨论的代码是以下Javascript中的ajax: function summary_ajax(sName){ $.ajax({ type: "POST",
400 Bad Request:
Bad request (GET and HEAD requests may not contain a request body)
所讨论的代码是以下Javascript中的ajax:
function summary_ajax(sName){
$.ajax({
type: "POST",
url: "summary",
dataType: "json",
data: {
'ccg_name': sName,
},
async: false,
success: function(data) {
//alert("In ajax success function") <----------- This never executes
lValues = data.lValues;
lLabels = data.lLabels;
},
});
};
return (lValues, lLabels);
我通过放置alert()
函数进行了一些测试(速度很慢,因为服务器只会每隔这么多分钟重新加载脚本),并且除了ajax调用中的警报之外,所有操作都可以正常执行。因此,这篇文章似乎要么失败了,要么观点出现了问题。有什么想法吗
那么,这段代码中有什么东西在我的本地服务器(金字塔)中工作,但在web服务器(Dreamhost)中出现故障吗?本地服务器和web服务器中的文件结构相同。我不明白为什么不应该这样做,但fData还会打开文件进行读取吗?对于其他人,我发现了问题: 我在上面指定的路径是在我的系统上工作的相对路径,但在服务器上不工作,因为工作目录明显不同。因此,我没有使用相对路径,而是更改了脚本以获得正确的绝对路径
要查找当前工作目录路径,只需在终端中输入
pwd
。如果您无法访问服务器中的日志,祝您好运。如果问题是一个未处理的异常,您可能能够捕获它,并显示它的消息,只需在请求处理之外再尝试一下。
@view_config(route_name="ccg_map_summary_ajax",renderer="json")
def ccg_map_summary_ajax(self):
sCCG = self.request.POST.get('ccg_name')
fData = open('pyramidapp/static/view_specific_js/ajax_summary_data.js')
dData = json.load(fData)
lLabels = dData[sCCG].keys()
lValues = dData[sCCG].values()
return {
'lLabels' : lLabels,
'lValues' : lValues,
}