I miei utenti inseriscono un nome utente e una password per un servizio di terze parti. Faccio una chiamata ajax a quel servizio per autenticarli. Il problema è che se inseriscono il nome utente e la password sbagliati, il browser (almeno firefox) visualizzerà una finestra di dialogo "autenticazione richiesta". Se poi inseriscono il nome utente e la password corretti in quella finestra di dialogo, la mia chiamata ajax restituirà un "successo" e sembrerà che l'utente/pass originale che hanno inserito sia corretto, quando non lo è (dal momento che l'hanno modificato).Come sopprimere la finestra di dialogo "autenticazione richiesta" del browser quando si effettua una chiamata ajax che richiede l'autenticazione?
C'è un modo per sopprimere questa finestra di dialogo (così posso quindi chiedere al mio servizio di correggere il loro utente/pass) o in qualche modo prendere il nome utente e la password corretti che l'utente ha inserito nella finestra di dialogo del browser? Questa è un'estensione per Firefox .. quindi sono sicuro che c'è un modo per prendere il pass/login corretto dalla richiesta .. ma sarebbe bello se ci fosse un metodo più semplice tramite javascript.
jQuery.ajax({
type: "GET",
dataType: "xml",
url: endpoint,
username: username,
password: password,
success: function(data,status) {
// Do something
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert(errorThrown);
}
});
Questo risolverebbe davvero il problema? Mi aspetto che se il nome utente e la password specificati nell'URL fossero errati, il server remoto emetterebbe comunque una risposta 401 ... –