ajax响应中的大量数据和不一致的反应

时间:2012-06-25 10:31:21

标签: django jquery

我在$(document).ready function中有一个ajax调用来获取大量数据并在页面上显示。它返回大约160KB的数据,大约需要6秒。大部分时间它运行良好但有时错误函数返回错误号403200404并且它不返回数据。我真的不知道是什么问题。这是我的ajax代码:

jQuery(document).ready(function(){
        URL='{% url CompanyHub.views.getServices %}';
        jQuery.ajax({
            url:URL,
            type:'POST',
            context: this,
            beforeSend:function(xmlHttpRequest){
                jQuery('#container').append('<img src="/static/loading.gif" id="loading" />');
            },
            complete:function(){
                jQuery('#loading').remove();
            },
            success:function(data){
                jQuery('#loading').remove();
                jQuery('#carousel').html(data);
            },
            error:function(jqXHR, textStatus, errorThrown){
                alert(jqXHR.status);
            }
        });

    });

2 个答案:

答案 0 :(得分:1)

首先应确保服务器端的一切正常,即404(未找到)和403(禁止)表明您发布的网址不正确。如果您使用django dev服务器,则可以在终端中看到响应代码。如果您在那里看到403s和404s,请调试服务器端代码。

答案 1 :(得分:0)

我没有表单元素,并且在发布选项中将csrf_token作为数据发送后问题得以解决:

data:{csrfmiddlewaretoken: '{{ csrf_token }}'}