Strategia per il recupero dei dati da un'API

0

Sto lavorando su un sistema basato su permessi in cui un utente può richiedere qualsiasi risorsa consentita in base al suo ruolo, la risorsa può essere uno dei seguenti tipi:

  1. VM
  2. DB
  3. ecc.

La richiesta dovrebbe contenere le informazioni come gestore, il suo centro di costo e infine il tipo di risorsa richiesta.

Il controllore del modulo di richiesta deve fare il lavoro pesante per filtrare l'elenco delle risorse e i centri di costo in base al suo ruolo, un amministratore può invece richiedere qualsiasi risorsa per conto di qualsiasi manager e del suo centro di costo.

Al momento ci sono le seguenti chiamate di rete:

  1. Richiedi i dettagli dell'utente
  2. Richiedi tutti i centri di costo
  3. Richiedi gestori visibili all'utente
  4. Richiesta di tipi di risorsa consentiti per l'utente connesso

Vedo che oggigiorno le applicazioni utilizzano il rendering lato server ma non posso trasferirmi in questo momento. Che cosa succede se i dati vengono elaborati sul back-end e quindi inviare i dati specifici per visualizzazione che sarebbe idealmente un singolo oggetto JSON qualcosa del tipo:

{
  "user": {name, roles},
  "costcentres": [...],
  "managers": [...],
  "resources": [...]
}

Nel caso precedente, il cliente sarebbe davvero stupido e avrebbe solo bisogno di andare oltre i campi e mostrarlo. Tutto il lavoro pesante è fatto dal server e dal database.

Ma nel secondo caso temo di violare il resto principale e invece di avere URI per ciascuna risorsa avrei ad esempio l'URI per ogni vista:

/api/v1/request-form/

invece di

/api/v1/costcentres/
/api/v1/managers/
/api/v1/resources/

Quale dei due metodi sopra menzionati si adatta bene quando c'è un'enorme quantità di dati?

    
posta CodeYogi 13.12.2017 - 16:16
fonte

0 risposte