Sto lavorando su un'App che fondamentalmente comunica con un'API di terze parti, non ha back-end. Il front-end sarà una SPA. Ecco lo scenario generale:
- L'API esterna richiede l'ID dell'utente corrente per rispondere alla query richiesta.
- Il mio server inizialmente ha le informazioni dell'utente che può utilizzare per interrogare l'API e ottenere il risultato desiderato.
- In base alla risposta iniziale, l'utente inserisce ulteriori dettagli e richiede di nuovo l'API per la risposta finale.
Possibili soluzioni nella mia mente:
Soluzione 1 (con sovraccarico di richieste aggiuntive):
- Alla prima richiesta servi la home page all'utente, quindi lascia che sia front-end invia una richiesta (con le informazioni utente registrate) al mio server per ottenere i dati iniziali dall'API esterna.
- Ora, il mio server richiede l'API esterna, ottiene la risposta e invia tale risposta al client.
- Il cliente riceve la risposta, effettua un'altra richiesta in base alla risposta.
- Ripeti il passaggio 2 con i dati aggiuntivi.
Soluzione 2:
- Poiché il server ha già le informazioni utente (utilizzando oauth2), prima di richiedere l'API, quindi eseguire il rendering della pagina di destinazione con la risposta caricata nella pagina come dati JSON globali statici, lasciare che il codice front-end esegua la query dati statici e usalo costruisci la prossima richiesta.
- Ora, abbiamo lo stesso scenario del passaggio 2 menzionato sopra.
PS: l'API comunica tramite il protocollo SOAP e mantiene una sessione utilizzando oauth2.
Domanda: Quale scenario è migliore rispetto alla gestione degli errori e alla disponibilità? Come devo gestire il caso quando l'API non funziona?