PHP意外重定向

时间:2015-12-09 12:50:45

标签: php

我有一个php脚本,我通过jQuery调用ajax来调用:

$.ajax({
  contentType: "application/x-www-form-urlencoded; charset=UTF-8",
  type: "POST",
  url: "getFares.php",
  data: someObjectHere,
  success: function(data) {
    handleSuccess(data);
  },
  dataType: "json"
});

大多数情况下,此请求工作正常,服务器会发送我期望的值。

但有时,服务器只响应303 SEE OTHER响应。我的PHP脚本中没有任何地方可以产生这种重定向。

不幸的是,当重定向发生时,我无法找到任何类型的模式。看起来它只会在我加载页面时发生,然后稍等一会然后调用ajax请求,但这可能是巧合。

我知道这不是一个非常有用的描述,但不幸的是我被困在这里所以我希望运气的人知道如何解决它。

以下是开发工具的几个屏幕截图,可以更清楚地说明问题:

在这张图片中你可以看到我已经对脚本提出了几个请求(getFares.php),并且我突出了一个有效的请求。你可以看到状态代码是200,一切都很好。 Working request

这里我突出显示了一个失败的请求。回复是303见其他。如您所见,请求的其他任何值都没有更改 Failed Request

我在这里可以找到的请求的唯一区别就在这里。对于返回正确结果的请求(状态200),类型为“xhr”,对于导致重定向的请求,类型为“x-www-form-urlencoded; charset = UTF-8”。我不知道为什么会发生这种情况或者它来自哪里。 Request overview

我认为问题可能与错误的服务器/ php设置有关,但很难搜索到这种错误。

1 个答案:

答案 0 :(得分:0)

这不是ajax问题,而是服务器本身因某种原因发送响应。

getFares.php页面必须检查一些帖子参数,如果满足,则发送200响应,否则其他一些响应如303.

您可以查看getFares.php代码以获得更多想法。