API REST con file come risorse?

3

Sto memorizzando i file come risorse API REST, inviandoli e ricevendoli come stringhe base64, insieme ad altri metadati. Qual è il modo migliore per gestire GET per la raccolta? (ad esempio, GET ... / api / file)

La risposta standard a GETting the collection (a mia conoscenza) è di restituire l'intero contenuto di tutte le risorse, ma in questo caso restituirebbe molti dati; viola gli standard REST per restituire solo una lista degli ID delle risorse? L'altra opzione logica è di restituire una sorta di riferimento ai dati del file in ogni risorsa, ma l'altro modo sembra più pulito.

    
posta Lukas Palmer 30.06.2017 - 02:14
fonte

2 risposte

2

In un'API RESTful, un GET per una raccolta dovrebbe restituire una rappresentazione della collezione.

Non è richiesto che la rappresentazione di una raccolta contenga le rappresentazioni complete degli elementi della collezione.
Una cosa che mi aspetterei come parte della rappresentazione di una raccolta è un collegamento per ciascun elemento che indica dove è possibile accedere a quell'elemento. Oltre a ciò, puoi includere tanto o meno la rappresentazione degli elementi come ritieni sia utile per i tuoi utenti / clienti.

    
risposta data 30.06.2017 - 08:36
fonte
0

I tuoi approcci non violano i vincoli che un sistema RESTful deve soddisfare, ovvero: client-server, stateless, memorizzabile in cache, sistema a livelli, code on demand (opzionale) e interfaccia uniforme. Vedi wikipedia per maggiori dettagli.

Vorrei andare con la prima opzione: "restituisci il contenuto completo di tutte le risorse" (forse tutto ben organizzato in un JSON) poiché è semplice.

Dopo che tutto è in esecuzione, se questo mi dà problemi (come una cattiva prestazione), allora inizierei a cercare altri modi ...

    
risposta data 30.06.2017 - 02:57
fonte

Leggi altre domande sui tag