csrf 的ajax在POST情况下的应用

在django中启用了csrf后,直接用GET请求ajax是可以正常使用的,但是在POST情况下,会存在403 CSRF拒绝请求的情况。需要在CSRF中采用特殊情况进行处理。

 jQuery.ajaxSetup({

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

        });

function show_dialog(ele) {
    var sql = ele.innerHTML;
    jQuery.ajax({
        type: 'POST',
        url: '/query_sql/',
        data: {'sql': sql},
        dataType: "json",
        success: function (response) {
            if (response.status == 'ok') {
                // 登录成功
                sql_res = response.sql;
                $('#sql_result').text(sql_res);
                $('#sql_result').dialog();
            } else {
                jQuery("#login_result").text(response.error);
            }
        },
        error: function (xhr) {

        }
    })
};

posted on 2019-04-12 09:30  钻风  阅读(169)  评论(0)    收藏  举报

导航