Robię zapytanie o domenę w różnych domenach, aby uzyskać pewne dane. Usługa REST ma Basic authentication
(ustawiona przez IIS
).Podstawowe żądanie uwierzytelnienia w domenie ajaxowej domeny
$.ajax({
type: "GET",
xhrFields: {
withCredentials: true
},
dataType: "jsonp",
contentType: "application/javascript",
data: myData,
async: false,
crossDomain: true,
url: "http://xx.xx.xx.xx/MyService/MyService.svc/GetData",
success: function (jsonData) {
console.log(jsonData);
},
error: function (request, textStatus, errorThrown) {
console.log(request.responseText);
console.log(textStatus);
console.log(errorThrown);
}
});
Kiedy robię ten wniosek, to skłania mnie do wprowadzenia poświadczenia & muszę ręcznie wprowadzić dane uwierzytelniające, aby uzyskać odpowiedź. Czy możemy przesłać te referencje za pośrednictwem samego żądania?
nie jestem podekscytowany tym odpowiedź, a oto dlaczego: to zbędny (pytanie odpowiedział około pół roku wcześniej) i jest zbędny (jQuery obsługuje twoje dokumenty, AFAICT). Jeśli się mylę co do tego drugiego, edytuj odpowiedź, a ja usunę ten komentarz. –
Użycie właściwości beforeSend sprawdziło się, ponieważ nazwa użytkownika i hasło z jakiegoś powodu nie dodawały nagłówka Authorization. Na wszelki wypadek, że pomaga każdemu. – rodrigobartels