Javascript 仅在Safari 9.0中的Ajax调用中出现DOM错误

Javascript 仅在Safari 9.0中的Ajax调用中出现DOM错误,javascript,ajax,dom,Javascript,Ajax,Dom,我的javascript中有以下代码 var _csrf = $("#csrf_token").val(); var xhr = $.ajax ({ url : 'http://ip.jsontest.com/', type : 'GET', contentType : 'application/json', headers : {

我的javascript中有以下代码

var _csrf = $("#csrf_token").val();

        var xhr = $.ajax ({

            url : 'http://ip.jsontest.com/',
            type : 'GET',
            contentType : 'application/json',
            headers : {

                        "csrf" : _csrf
                    }
        })
        .done(function(data){

            alert('done');   

        })
        .fail(function(data){

            alert(data["statusText"]);
        })
        .always(function(data){

            alert('always');

        })
csrf_标记为HTMl,如下所示

<input type="hidden" value=" {{ csrf_token }}" id="csrf_token" >

还是同一个问题

我只是在尝试使用时遇到了这个问题

headers = 'Content-Type: application/x-www-form-urlencoded';
我发现,经过一点摆弄,它在头球的空隙上绊倒了。当我将其设置为:

headers = 'Content-Type:application/x-www-form-urlencoded';
它工作得很好。我已经使用不同的标题内容(随机文本、其他有效标题)进行了检查,标题中至少有一个空格导致了这一特殊问题。我不知道你是否可以重新配置你的头来删除空间,但它让我的头重新开始工作


不确定您是否要向苹果报告,因为它在Safari 9更新之前运行良好,或者jQuery工作人员可以仔细查看。

为什么要将csrf令牌作为自定义标头而不是表单数据发送?没有具体原因,我正在尝试,现在我正在将其作为标头发送。但不管csrf与否,我都得到了错误。例如,在编辑的问题中引入了一个新的自定义标题,但仍然得到相同的错误
console.log(_csrf)有任何输出吗?是控制台。日志(_csrf)打印。eJxTik5JLEktycxN1YMxNIwMDE11FAwNgBhEG-oomfoasbogpm5ibgxzqwsalq8das.wblYnJttn4qKhmSXCjz1wOUrkDg。我还注意到“bootstrap.min.CSS:5:57896”中有一个名为“意外CSS标记”的警告
headers = 'Content-Type:application/x-www-form-urlencoded';