jQuery ajaxSetup beforeSend no se ejecuta en IE8

Mi proyecto usa jQuery 1.4.2. Tengo información de seguridad que agrego a mis encabezados AJAX ... La forma en que lo hago es usando $ .ajaxSetup () y configurando una función beforeSend.

$(document).ready(function (e) {
    $.ajaxSetup({
        global: true,
        beforeSend: function (jqXHR, settings) {
            var verificationToken = 'some encrypted string';
            jqXHR.setRequestHeader("X-Request-Verification-Token", verificationToken);
        }
    });
})

Según tengo entendido, esto debería ejecutarse cada vez que hago una llamada a $ .ajax (), ¿verdad? Funciona bien en Chrome, Firefox, IE9, etc., pero ocasionalmenten en IE7 / 8.

Aquí es donde lo llamo:

$.ajax({
    type: "POST",
    async: true,
    data: 'somedata',
    url: "/some/url",
    success: function (data) {
        alert("success");
    },
    error: function (data) {
        alert("error");
    }
});

He encontrado una solución alternativa, que es agregar beforeSend directamente a la llamada $ .ajax () (a continuación), pero realmente quiero hacer esto globalmente, en lugar de tener que agregarlo a muchos lugares en el código. ..

$.ajax({
    type: "POST",
    async: true,
    data: 'somedata',
    url: "/some/url",
    success: function (data) {
        alert("success");
    },
    error: function (data) {
        alert("error");
    }
    beforeSend: function (jqXHR, settings) {
        var verificationToken = 'some encrypted string';
        jqXHR.setRequestHeader("X-Request-Verification-Token", verificationToken);
    }
});

¿Alguna pista

¡Gracias! Neil

Respuestas a la pregunta(1)

Su respuesta a la pregunta