Los encabezados de Solicitud de autorización de Ajax fallan una y otra vez

Estoy trabajando en un consumidor para una API propia y tengo serias dificultades para configurar la Encabezado de autorización. Estoy usando JQuery para las solicitudes de Ajax, pero el 'beforeSend' no funciona en absoluto (usandoviolinist para examinar las solicitudes)

Este es mi código antes de enviar:

    $.ajax({
     type: "GET",
     url: url+"/Projects",
     contentType: "application/json; charset=utf-8",
     beforeSend: function (req) {
        req.setRequestHeader("Authorization", AuthBuilder(username, password));
     },
     success: function (result) {
        alert("success");
     },
     error: function (xhr, ajaxOptions, thrownError) {
        alert("fail");
     }
 });

Bueno, si eso falla, ¿qué haces? Regrese a la antigua forma de enviar solicitudes ajax ... bueno, esto tampoco funciona ...

Este es mi código habitual:

function GET(address, callback, error) {
Request = getXMLHttpObject();
Request.open("GET", url + address, true);

var base64 = Base64.encode(username + ":" + password);
alert(base64);
Request.setRequestHeader("Authorization", "Basic " + base64);

Request.send();
Request.onreadystatechange = function () {
    //alert(Request.readyState+" code "+Request.status);
    if (Request.readyState == 4 && Request.status == 200) {
        callback(jQuery.parseJSON(Request.responseText));
    } else if (Request.readyState == 4 && Request.status >= 400) {
        error(Request.status, Request.statusText);
    }
} 
}

No importa el hecho de que no estoy pidiendo json específicamente porque el servicio devuelve json pordefect.

Información adicional:

el origen no importa, el servicio permite todos los orígenes (ha sido probado y confirmado) la Autorización funciona cuando se establece mediante encabezados (probado en otros clientes)los encabezados de autorización simplemente no se envíanAuthBuilder (nombre de usuario, contraseña)) proporciona el formato correcto del contenido del encabezado de autenticación básicathe getXMLHttpObject () es solo un código de copiar y pegar y funcionó antes que

Alguna idea

Respuestas a la pregunta(2)

Su respuesta a la pregunta