Sto lavorando a un consumer per un'API self-made e ho serie difficoltà nell'impostare l'intestazione Autorizzazione. Sto usando JQuery per le richieste Ajax, ma il 'beforeSend' non funziona affatto (usando violinista per esaminare le richieste)Le intestazioni di richiesta di autorizzazione Ajax non riescono più e più volte
Questo è il mio codice beforeSend:
$.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");
}
});
Beh, se che fallisce cosa fai? Torna al vecchio modo per l'invio di richieste Ajax ... beh questo non funziona o ...
Questo è il mio codice regolare:
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);
}
}
}
non ti dispiace il fatto che io sono non chiedere specificamente json perché il servizio restituisce json per predefinito.
nelle informazioni aggiuntive:
- l'origine non importa, il servizio consente tutte le origini (è stato testato e confermato)
- l'autorizzazione funziona quando impostato per le intestazioni (testato in altri client)
- le intestazioni di autorizzazione solo non vengono inviati
- AuthBuilder (nome utente, password)) fornisce il corretto formato del contenuto intestazione di base Auth
- il getXMLHttpObject() è solo qualche copia incolla il codice e funzionava prima
qualche idea?