jquery + ajax 跨域parsererror

页面调用代码

$.ajax({
        async:false,
    type : 'post',
    dataType:"jsonp",
      url : "http://127.0.0.1:8080/query.do?action=clients",  
      success : function(data){
        alert(data);     
      },
      error:function(XMLHttpRequest, textStatus, errorThrown) {
          alert("status:"+XMLHttpRequest.status 
                + ", readyState:"+XMLHttpRequest.readyState
                + ", textStatus:"+textStatus);
        }
  }); 

设置参数:async:false,dataType:”jsonp”,可实现跨域访问,但返回一直是error函数,serverlet后台成功,使用火狐浏览器调试,发现发送的url为http://127.0.0.1:8080/query.do?action=clients&callback=jQuery21305029407908107708_1449541331780,发现多了一个callback参数,查阅资料,修改返回数据内容可成功访问,修改后台代码如下:

try{
    result = String.format("%s(%s);", request.getParameter("callback"), "Hello wrold! ");
    ServletOutputStream os = response.getOutputStream();
    os.write(result.getBytes());
    os.flush();
    os.close();
} catch(Exception e) {
    log.error(e.getMessage());
}
阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页