Effettuare richieste AJAX in Javascript e Qwest

Effettuare richieste AJAX in Javascript e Qwest

Di solito uso jQuery per effettuare richieste AJAX; e questo peechè jQuery lo uso molto in generale.

L'altro giorno dovevo mettere su una pagina dimostrativa, senza fronzoli, e dovevo effettuare una richiesta AJAX.

Non mi andava di usare Javascript standard, e non mi andava neanche di andare di integrare jQuery solo per questo.

Allora mi sono messo alla ricerca di una libreria AJAX per Javascript, e alla mi sono imbattuto in Qwest!

Un'ottima libreria che usa tutti gli strumenti più moderni:

  • promises
  • XmlHttpRequest2
  • ecc

Vediamo un semplice esempio; considerate che la libreria l'ho scaricata in locale, e non sono ci sono dipendenze:

var url = 'www.example.com';
qwest.get(url).then(function (xhr, response) {
    console.log(response);
});

Possiamo anche intercettare eventuali errori usando catch:

var url = 'www.example.com';
qwest.get(url).then(function (xhr, response) {
    console.log(response);
}).catch(function (e, xhr, response) {
    console.log(response);
});

Infine, abbiamo anche il complete:

var url = 'www.example.com';
qwest.get(url).then(function (xhr, response) {
    console.log(response);
}).catch(function (e, xhr, response) {
    console.log(response);
}).complete(function (xhr, response) {
    // VIENE SEMPRE ESEGUITO
    console.log(response);
});

Non vi ricorda un pò la struttura del tray/catch/finally??

Comunque, qui abbiamo eseguito solo richieste GET senza inviare nulla al server.

Ovviamente la libreria consente anche di eseguire richieste POST e di inviare dati.

E' anche possibile richiamare altri metodi HTTP non standard, usando la funzione map.

E di default tutte le richieste sono asincrone.

Insomma, un'ottima libreria da tenere in considerazione.

Enjoy!