2013-12-19 112 views
0

我想到达下面的URL并验证我是否获取HTTP状态200或其他内容。 http://AAAAAAAAAA.com:59060/eddUtilityService/eddUtilityService.wsdl

由于没有任何关于跨域的问题没有回答我的问题。所以请不要忽视这一点。

这是我从我的HTML文件制作的ajax调用。

$.ajax({ 
    url: "/l2/eddUtilityService/eddUtilityService.wsdl",   
    type: "HEAD", 
    async: false, 
    contentType: "JSONP", 
    success: function(data){ 
     console.log("SUCCESS for ajax call "); 
     return data.responseCode; 
    }, 
    error:function(jqXHR, textStatus, errorThrown){ 
     console.log("Error for ajax call "+jqXHR.status+"-- "+textStatus+"--"+errorThrown); 
     return jqXHR.status; 
    } 

但是我有我在Apache中的代理设置如下;

  RewriteRule /l2/eddUtilityService/eddUtilityService.wsdl http://AAAAAAAAAA.com:59060/eddUtilityService/eddUtilityService.wsdl 
      ProxyPassReverse /l2/ http://AAAAAAAAAA.com:59060/ 

但我得到的错误的结果,并jqXHR.status为0,也是其readyStatus等于0

有人能说什么在上面的代码wrond? 我也尝试过contentType =“text/xml”和“application/text”只是json。但结果是一样的。

回答

0

我对apache代理了解不多,所以我不确定这是否有很大的帮助,但是来自服务器的HTTP响应头应该有这个头:“Access-Control-Allow-Origin”,“ *“以允许跨源请求。您可能想检查您的代理配置

+0

感谢您的答复Inohika。但是我看不到服务器端配置,因为AAAAAAAAAA.com正在另一台机器上运行,我无法控制它。所以不确定在服务器响应中设置了“Access-Control-Allow-Origin”。可能不会。但是有没有什么办法可以通过从客户端本身做些事来弥补? – Subbu