Chr*_*ris 16 python django ajax json
我已经看到人们在尝试发出远程Ajax请求时遇到禁止错误的情况,但是我正在做一个本地请求,我也在我的中间件中打开了CSRF.
errorThrown返回"Forbidden"
我认为问题可能是我正在尝试将其发送到普通视图(当前页面)...我不确定我的预处理器是否返回到视图以重新呈现页面..或者如果它是返回我当前的页面.(不要以为我解释得那么好)
希望这能为您提供足够好的照片.任何/所有帮助表示赞赏.
.ajax:
jQuery.ajax({
        type: "POST",
        dataType: "json",
        data: dataString,
        success: function(json) {
              jQuery(".signup").attr('disabled', false);
              $('.success').show();
              console.log(json.message);
        },
        error: function(jqXHR, textStatus, errorThrown) {
              jQuery(".signup").attr('disabled', false);
              $('.fail').show().append(errorThrown);
              console.log(textStatus);
        }
    });
Luk*_*ger 20
即使请求属于同一域,您也需要CSRF令牌.这里有代码为您的AJAX请求添加CSRF令牌(使用jQuery):
https://docs.djangoproject.com/en/1.7/ref/contrib/csrf/#ajax
此链接指向1.7版,如果您使用的是不同版本的Django,则可以从右下方的浮动菜单中选择您的版本.
如果你打开csrf,你会得到403错误,尝试加入views.py以查看是否导致它:
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
view class/method