Ciao, l'errore che vedi in console sei sicuro che sia per timeout??
quel 1ms è il tempo che ci mette ad eseguire la chiamata , l'errore di per se dovrebbe essere loggato e visibile piu' nel dettaglio aprendo i dettagli con la freccia in POST.
Mi pare anche strano il location.relaod , nel senso che se invii quella chiamata in ajax così nella sequenza come scritto, il location relaod parte subito indipendentemente se ajax ha finito o meno perchè asyncrona.