通过服务器路径访问json对象时,获取xmlhttp响应为空

时间:2018-10-10 15:11:06

标签: javascript xml spring-mvc

我有一个js函数,该函数转到spring控制器类中,该类返回一个json对象,其数据如下:

 {"prop1":"val1",
 "prop2":"val2"}

js函数类似于:

 accessValue(a,b,c){

  var xmlhttp = new XMLHttpRequest();
       alert("This works 1");
       xmlhttp.onreadystatechange = function() {
           alert("This works 2");
              if (xmlhttp.readyState == XMLHttpRequest.DONE) { 
                  alert("This works 3" + xmlhttp.status);//line 1
              if (xmlhttp.status == 200) {
                   var jsonobj = JSON.parse(this.responseText); //line 1
                   alert("Hi ");
                   document.getElementById(b).innerHTML = jsonobj.prop1;
                   document.getElementById(c).innerHTML = jsonobj.prop2;
                   console.log(jsonobj.prop2);
              }
              else if (xmlhttp.status == 400) {
                    alert('There was an error 400');
              }

       }
     };
     xmlhttp.open("GET", a + "--spring controller class path --");
     xmlhttp.send(null);

}

在函数参数中,b和c是div id,我要使用json对象中的数据进行更新。参数a是一个URL,该URL附加有controller类的spring路径,该类返回运行良好的json对象。

在第1行,我将xmlhttp.status的状态设置为0,这是空响应。在线搜索后,我发现这可能会发生,因为文件可能在本地正确访问,但无法通过服务器访问。在localhost上使用相同的代码效果很好。有没有办法我可以使用正确的http url访问服务器上的spring控制器返回的json对象,并解析数据以更新div?

0 个答案:

没有答案