使用Spring Security CSRF令牌的jQuery File下载插件问题

时间:2017-03-13 15:24:22

标签: jquery file spring-security download csrf

我正在使用jQuery文件下载插件,对于后端我使用Spring和Spring Security,当我尝试将请求发送回浏览器下载文件时,我收到403错误:

  

HTTP状态403 - 无效的CSRF令牌' null'在请求参数' _csrf'上找到或标题' X-CSRF-TOKEN'。

我正在尝试将此参数作为请求标头传递,这可能如何进入此插件?

例如,在一个简单的AJAX请求中,我通过写:

完成了这个
var header = $("meta[name='_csrf_header']").attr("content");
var token = $("meta[name='_csrf']").attr("content");
$.ajax({dataType : 'json',
        url : serverURL,
        data : filesData,
        type : fetchMethod,
        enctype: 'multipart/form-data',
        processData: false,
        contentType:false,
        beforeSend: function(xhr){
            xhr.setRequestHeader(header, token);

        }
})

它很棒!

1 个答案:

答案 0 :(得分:0)

你可以通过' _csrf'参数如下

$.fileDownload(url, {
    data: {
        '_csrf': <CSRF-TOKEN>
    },
    successCallback: function (html,data) {
     },
     failCallback: function (form,data) {
     }
});