Se stai dando un flusso di controllo all'API, la risposta è aspettare che l'inferno si congeli, o l'utente preme ctrl-alt-del. Se lo chiami in modo asincrono, la strategia tipica è il timeout.
Se l'API genera un'eccezione, facile: ripulire, registrare e visualizzare l'errore.
Qualunque cosa tu faccia, non fallire in silenzio. Odio il debugging di cose che falliscono silenziosamente.
Nessuna risposta?
Se l'API ritorna ma non ti dà nulla, vale a dire nullo o nullo, beh ciò significa che qualsiasi API l'ha documentato. Null è sovraccarico per significare molte cose. È un buco nel sistema di battitura. Sir Hoare l'ha definito un errore da un miliardo di dollari.
Quando chiedi qualcosa, fai una domanda, cioè fai una domanda. Ogni domanda ha una premessa. Qualcosa assume per vero. Quando questa ipotesi è sbagliata, rispondiamo con qualcosa di diverso da quello che ci si aspettava. Potremmo essere in un sistema che presuppone che possa chiedere l'altezza di qualsiasi cosa e ritrovarci a modellare una canzone. Quando ti viene chiesto l'altezza di una canzone, come puoi rispondere? Crea qualche sciocchezza di ampiezza e attaccalo in un oggetto di altezza? Di solito rispondiamo con un'eccezione, un codice di errore, un NaN, o in alcuni casi tristi, con un nulla. Ogni API avrà già preso questa decisione. Qualunque cosa abbiano fatto, se viola le aspettative della domanda solo per favore, non fallire in silenzio. Dare un'idea di cosa potrebbe essere sbagliato. Anche 404 è meglio di una pagina vuota.