Javascript 响应python web应用程序的ajax请求

Javascript 响应python web应用程序的ajax请求,javascript,python,ajax,Javascript,Python,Ajax,我使用Flask设置了一个pythonweb服务器,我试图向它发送一个ajax请求,然后处理答案 这是js代码: var ajaxObj=setXMLHttpRequest(); 函数setXMLHttpRequest(){ var xhr=null; if(window.XMLHttpRequest){ xhr=newXMLHttpRequest(); }else if(window.ActiveXObject){ xhr=新的ActiveXObject(“Microsoft.XMLHTTP

我使用Flask设置了一个pythonweb服务器,我试图向它发送一个ajax请求,然后处理答案

这是js代码:

var ajaxObj=setXMLHttpRequest();
函数setXMLHttpRequest(){
var xhr=null;
if(window.XMLHttpRequest){
xhr=newXMLHttpRequest();
}else if(window.ActiveXObject){
xhr=新的ActiveXObject(“Microsoft.XMLHTTP0”);
}
返回xhr;
}
函数sendAjaxRequest(){
var url=“/refresh”;
打开(“GET”,url,true);
ajaxObj.onreadystatechange=函数(){ajaxAnswerManager()}
ajaxObj.send(空);
}
函数ajaxAnswerManager(){
if(ajaxObj.readyState==4){
var结果=ajaxObj.responseText;
警报(结果);
}

}
首先,请开始使用jquery处理AJAX请求。它更容易使用,工作起来更干净。上述代码段仅可通过以下代码实现:

$.ajax({
  url: '/refresh',
  type: 'GET',
  success: function(response){ alert( response ); }
})
在python脚本中,可以执行以下操作以返回所需的内容:

@app.route('/refresh')
def refresh:
    var_you_want = 'whatever you want to return'
    return json.dumps({ 'data': var_you_want })
500内部服务器将指示python代码本身存在错误。 另外,由于您正在使用上述python代码发送json对象,因此最好在success函数中对其进行解析:

$.ajax({
  url: '/refresh',
  type: 'GET',
  success: function(response){ alert( JSON.parse(response) ); }
})

500内部服务器错误是Python代码中的一个问题。另一个问题是,您从未将
ajaxObj
传递给
ajaxAnswerManager()
,因此该变量超出了scope@Cfreak
ajaxObj
仍处于
ajaxAnswerManager
s可访问关闭状态,您看到了什么范围问题?@TbWill4321您是对的。我只是看错了