Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用JQuery AjaxSetup设置;csrf“;每次我有一个XHR请求时作为一个参数?_Javascript_Jquery_Backbone.js - Fatal编程技术网

Javascript 如何使用JQuery AjaxSetup设置;csrf“;每次我有一个XHR请求时作为一个参数?

Javascript 如何使用JQuery AjaxSetup设置;csrf“;每次我有一个XHR请求时作为一个参数?,javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,如果是GET,则将其附加到问号上。如果它是一个帖子,则将其扩展到对象 我不使用数据:{}的原因是因为Backbone.js 0.5覆盖了数据,并且csrf不会被追加。您尝试过下面的解决方案吗?jquery应该在请求被发送之前添加参数 $.ajaxSetup({ beforeSend:function(xhr, settings){ console.log(xhr); // Here, I want to set csrf toke

如果是GET,则将其附加到问号上。如果它是一个帖子,则将其扩展到对象


我不使用
数据:{}
的原因是因为Backbone.js 0.5覆盖了数据,并且csrf不会被追加。

您尝试过下面的解决方案吗?jquery应该在请求被发送之前添加参数

$.ajaxSetup({ 
        beforeSend:function(xhr, settings){
            console.log(xhr);
            // Here, I want to set csrf token to both POST or GET parameters.
        } 
    });
编辑
那就试试这个吧

$.ajaxSetup({
    data: {
        csrf: 1
    }
})

您可以覆盖主干同步方法,如中所述。它已经打包在github上。

好的,然后试试我的第二个解决方案。
$.ajaxSetup({
    beforeSend: function(xhr, settings) {
        switch (settings.type) {
            case "GET": settings.url += "&csrf=1"; break;
            case "POST": settings.data += "&csrf=1"; break;
        }
    }
})