11

我的工作 CodeIgniter 站点在 MediaTemple 上托管时出现 500 内部服务器错误。它发生在 jQuery Ajax 调用期间。

我不知道出了什么问题。是控制器的错误还是模型的错误?我的阿贾克斯电话:

$.ajax({
    url: "<?php echo site_url('invites/save_email') ?>",
    type: 'POST',
    data: form_data,
    success: function(msg) {
    window.location.href = "<?php echo site_url('invites/moreinvites')?>"
        return true;
    },
    error: function (xhr, ajaxOptions, thrownError) {
        alert(xhr.status);
        alert(thrownError);
        alert(xhr.responseText);
    }
});

xhr.responseText 已返回给我<p>The action you have requested is not allowed.</p>。但是,这是什么意思?

4

3 回答 3

44

您可以尝试在错误回调中使用alert(xhr.responseText);console.log(xhr.responseText);(后者将显示在您的浏览器控制台中,例如firebug),这样做您可以获得与异常相关的消息(如果有)。

error: function (xhr, ajaxOptions, thrownError) {
           alert(xhr.status);
           alert(xhr.responseText);
           alert(thrownError);
       }

或者

error: function (xhr, ajaxOptions, thrownError) {
           console.log(xhr.status);
           console.log(xhr.responseText);
           console.log(thrownError);
       }
于 2013-03-08T00:19:58.663 回答
0

在此处查看我的回复。它是关于如何使用 CodeIgniter 和 jQuery 进行 ajax 调试的完整说明。

于 2014-02-14T18:24:01.180 回答
-1

您需要配置 webconfig 文件以接收 POST 请求。

 <system.web>

    <webServices>
      <protocols>
        <add name="HttpPost" />
      </protocols>
    </webServices>
 </system.web>
于 2016-07-07T14:08:02.420 回答