Come possiamo gestire la raccolta vuota su un'interfaccia RESTful, con l'intestazione Content-Range's items?Raccolta vuota e intestazioni HTTP Contenuto-
Ad esempio, con 42 record, una richiesta Range: items=0-41
restituisce tutto e l'intestazione della risposta sarà: Content-Range: items 0-41/42
.
Tuttavia, come possiamo gestire l'intestazione Content-Range
quando non ci sono record? Grazie per qualsiasi aiuto.
Edit:
Voglio dire, restituendo un insieme vuoto, il server può decidere di tornare Content-Range: items x-y/0
, dove x
e y
sono un valore che sarebbe diverso da 0. Ma quale? Penso che questa sia una domanda appiccicosa, e le specifiche non ne parlano.
Davvero? Un codice di stato completamente diverso per quando la raccolta è vuota? Mi aspetto uno stato 200 con un array vuoto come risultato. 'Content-Range: */0' ha senso comunque. –
Guardandoci sopra, penso che lo stato 416 sia stato concepito per quando la richiesta include un'intestazione 'Range' che specifica un intervallo non valido. Tuttavia, se non è stato specificato alcun intervallo, vorresti comunque applicare un intervallo predefinito. Personalmente penso che 416 sia molto ostile anche se è stato specificato un intervallo. Se richiedo 'Range: 0-99' voglio solo ottenere la prima 'pagina' di 100 elementi. A chi importa se ce ne sono in realtà meno? Leggerò l'intestazione della risposta per capirlo. Ma se restituisce lo stato 416, in pratica costringiamo il cliente a richiedere il numero totale di risultati prima, separatamente. Non ha senso. –
Penso che 416 abbia senso se * start * dell'intervallo era fuori limite. Ma per costringere i clienti a ottenere prima il totale in modo che possano regolare la * fine * dell'intervallo per rimanere nel totale, si finisce con un'API molto intuitiva (e lenta). –