Ciao
è chiaro che la risposta non ti puo arrivare istantaneamente visto che si tratta di una richiesta http a un server remoto. Per non confondere l'utente con questa attesa,puoi implementare una callback che controlli i cambiamenti di stato e lo stato stesso della richiesta in corso richiamando un div in primo piano con un qualche messaggio (es. loading) o barra di stato che "intrattenga" l'utente per tutto il tempo necessario.
Puoi anche decidere un timeout oltre il quale annullare la richiesta oppure inserire un pulsante nel div in questione che permetta all'utente di richiamare il metodo abort() ma in ogni caso fondamentale evitare la possibilità di richieste multiple e/o accavallate.