在预检重定向302状态代码之后,什么可能导致AJAX与JQuery失败,错误0

时间:2016-08-09 01:48:26

标签: jquery ajax http cors

我正在向具有内置重定向的服务器发出'GET'请求。用户第一次发出请求时,会设置cookie并将请求定向到预期的资源。直到今天,该请求在许多不同的计算机和浏览器上都取得了成功。由于预检重定向302错误,第一次用户无法完成AJAX请求。以下是请求代码。

$.ajax({
    type: "GET",
    url: plc_dt_get,
    contentType: "text/xml",
    async: true,
    cache: false,
    beforeSend: function(xhr){
        xhr.setRequestHeader("Authorization", "Basic " + btoa(username+":"+password));
        },*/
    success: function(xml){...},
    error: function(data){
            alert("AJAX POST failed: "+ data.status + ' ' + data.statusText);
        }

使用相同版本的Chrome和Firefox作为用户,我能够成功发出请求。实际上,即使删除了所有cookie和浏览历史记录,我也无法在任何Web浏览器上重新创建该问题。下面我概述了失败用户的Chrome浏览器的请求信息。

常规

响应标头

  • 连接:keep-alive
  • 内容长度:43
  • 内容类型:text / plain
  • 日期:(时间戳)
  • 地点:/(客户)
  • Set-Cookie:connect.sid =(garbage)bk;路径= /;到期=周三,07 ......;仅Http
  • 不同:接受
  • X-Powered-By:Express

请求标头

  • 接受: /
  • 接受编码:gzip,deflate,sdch
  • 接受语言:en-US,en; q = 0.8
  • Access-Control-Request-Headers:content-type
  • 访问控制请求方法:GET
  • 连接:keep-alive
  • 主持人:(主持人).net
  • 原产地:http://(host).net
  • Referer:http://(host).net/(Customer)/(Site姓名)/
  • User-Agent:Mozilla / 5.0(Windows NT 10.0; Win64; x64)AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 52.0.2743.116 Safari / 537.6

我在这个主题上浏览过类似的问题,但似乎没有一个问题能够解决我的具体案例。如果它是一个CORS问题,我希望能更频繁地看到它,或者至少能够重新创建它。我对于对客户端代码库进行任何重大更改犹豫不决,因为该请求适用于许多用户。这是一个棘手的情况,因为在我与有问题的用户重新召集之前,我无法知道修复是否成功。我想听听您对可能导致此特定问题的原因的想法,以便我可以开始修复正确的路径。

0 个答案:

没有答案