La questione centrale è di circa l'uso delle intestazioni HTTP, tra Range, If-Range, Accept-Ranges e un intervallo definito dall'utente specificatore.Utilizzo dell'intestazione dell'intervallo HTTP con un identificatore di intervallo diverso dai byte?
Ecco un esempio fabbricato per illustrare la mia domanda. Supponiamo che io abbia un'applicazione in stile Web 2.0 che visualizza una sorta di documenti leggibili dall'uomo. Questi documenti sono suddivisi in modo editoriale in pagine (simili agli articoli che vedi nei siti Web delle notizie). Per questo esempio, si supponga:
- C'è un documento intitolato "HTTP Gamma Question" è suddiviso in tre pagine.
- La pagina di shell (
/document/shell/http-range-question
) conosce le meta informazioni sul documento, incluso il numero di pagine. - La prima pagina leggibile del documento viene caricata durante l'evento onload della pagina tramite un GET ajax e inserita nella pagina.
- Un controllo dell'interfaccia utente che assomiglia a [1 2 3 Tutti] si trova nella parte inferiore della pagina e facendo clic su un numero verrà visualizzata la pagina leggibile (caricata anche tramite ajax) e facendo clic su "Tutto" verrà visualizzato il intero documento. Assumere questi URL per il 1, 2, 3 e Tutti i casi di utilizzo:
/document/content/http-range-question?page=1
/document/content/http-range-question?page=2
/document/content/http-range-question?page=3
/document/content/http-range-question
ora alla questione. Posso usare le intestazioni del range HTTP invece che parte dell'URL (ad esempio un parametro querystring)? Forse qualcosa di simile su richiesta GET /document/content/http-range-question
:
Range: page=1
Sembra che la specifica definisce solo byte varia come consentito, quindi, anche se ho fatto le mie chiamate ajax lavorare con il mio browser e il codice del server, qualsiasi cosa in mezzo potrebbe rompersi il contratto (es. un server proxy di caching).
Range: bytes=0-499
Tutte le opinioni o esempi reali di identificatori di gamma personalizzato?
Aggiornamento: Ho trovato una domanda simile circa l'intestazione Range (Paging in a Rest Collection) dove si menzionano che Dojo di JsonRestStore utilizza un valore di intestazione intervallo personalizzato.
Range: items=0-24
possibile duplicato di [Paging in a Rest Collection] (http://stackoverflow.com/questions/924472/paging-in-a-rest-collection) – DanMan
@DanMan - Avevo già collegato a questa domanda simile, ma non tutto HTTP è REST e questo pone una domanda sui valori consentiti, non sulla semantica REST. Inoltre, una diversa formulazione del titolo della domanda aiuta persone diverse a trovare le loro risposte. –