Quali sono i valori validi per l'intestazione http pragma
. So che lo no-cache
è uno ma voglio attivare la memorizzazione nella cache, quindi cosa dovrei impostarlo. Ho fatto un po 'di googleing e tutto ciò che ho ottenuto è che la maggior parte dei client lo ignora, ma nessuna informazione su altri valori accetta.Quali sono i valori validi per http Pragma
risposta
Sorprendentemente esiste un solo parametro definito per impostazione predefinita, ovvero no-cache e non verranno definite nuove direttive Pragma in HTTP come da RFC.
ref: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.32
Inoltre, è necessario utilizzare il Cache-Control intestazione per gestire i comportamenti di caching piuttosto che la direttiva Pragma che sembra essere ancora incluso solo per supportare il HTTP legacy/1.0.
ref: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
Probabilmente siete alla ricerca di Cache-Control, questo è supportato in HTTP/1.1 e definisce più stati di Pragma.
Altre informazioni, che potrebbero aiutare alcune persone meno interessate al caching e più interessate alle intestazioni http in generale. l'interpretazione letterale della domanda originale, "quali sono i valori validi per il pragma dell'intestazione http"?
Il riferimento nella risposta accettata (https://stackoverflow.com/a/7376516/3246928) è la RFC http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.32. Definisce la snytax come:
Pragma = "Pragma" ":" 1 # pragma-direttiva
pragma-direttiva = "no-cache" | Estensione-Pragma
estensione-Pragma = token [ "=" (Token | quoted-string)]
Questo implica che qualsiasi coppia '= valore simbolico' è accettabile (con il valore è facoltativo). La specifica continua a dire
Nessuna nuova direttiva Pragma verrà definita in HTTP.
e vorrei immagino questo è destinato anche a coprire la parte "estensione-pragma", ma vorrei che fossero stati più inequivocabile qui.
Questa intestazione fa non sembra essere stata creata appositamente per il caching; la descrizione nel RFC dice:
Il campo generale-intestazione Pragma viene utilizzato per includere attuative di direttive specifiche che potrebbero essere applicate a qualsiasi destinatario lungo la catena richiesta/risposta
Così, in teoria, potresti aggiungere le cose qui e potrebbero funzionare. Tuttavia, nonostante molte ricerche, non ho trovato alcun riferimento a nessun altro valore mai usato qui. È effettivamente una parte morta e imbarazzante di http/1.
Sembra che la cosa normale da fare è:
Utilizzare solo pragma con la bandiera no-cache. Questo è l'unico valore che chiunque dovrebbe mai usare. (E ovviamente dovresti usare anche l'intestazione di controllo della cache per far sì che il tuo caching si comporti come previsto).
Se si desidera inserire alcune informazioni speciali in un'intestazione http, ad esempio se si desidera "includere direttive specifiche dell'implementazione applicabili a qualsiasi destinatario lungo la catena di richiesta/risposta", creare un'intestazione http personalizzata. Google e Amazon, ad esempio, eseguono questa operazione: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html e https://cloud.google.com/storage/docs/reference-headers
Nota la convenzione di denominazione nell'intestazione http. Il prefisso "x-" è deprecato , ma tutti sembrano usarlo in ogni caso.
- 1. Quali sono i valori validi per un campo URL django?
- 2. I valori JSON sono validi JSON?
- 3. Quali sono i valori possibili per i descrittori di file?
- 4. Quali sono i metodi di riordino validi per Java sincronizzati?
- 5. quali sono i colori validi per l'estensione colore di Mercurial?
- 6. Quali sono i possibili valori per CreateParams.Style?
- 7. Quali sono i nomi validi/non validi per i tag modulo HTML in jQuery?
- 8. Quali caratteri sono validi in un URL?
- 9. Quali caratteri sono validi nelle chiavi hash?
- 10. Quali sono i caratteri validi per i nomi e i valori delle variabili di ambiente di Windows?
- 11. Quali sono alcuni usi validi per spEL (Spring Expression Language)?
- 12. Quali sono tutti i valori possibili per SQLException.getSQLState?
- 13. I diritti non sono validi
- 14. Gli IRI sono validi come valori di attributo HTML?
- 15. Quali sono i caratteri validi per un nome di metodo Java?
- 16. Quali sono i campi di intestazioni HTTP richiesti
- 17. Quali sono i valori di verità e falsi in AngularJS?
- 18. Quali dovrebbero essere impostati i campi di intestazione della richiesta HTTP di scadenza, controllo cache e pragma HTTP?
- 19. Quali sono i tipi di restituzione validi di un metodo di controllo Spring MVC?
- 20. Quali caratteri sono validi/non validi in un nome di chiave JSON?
- 21. I nomi utente sono candidati validi per una chiave primaria?
- 22. I caratteri nulli in java.io.File sono validi per verificare l'esistenza?
- 23. Quali sono gli altri valori NaN?
- 24. Quali vincoli di widget sono validi per le classi di domini Grails?
- 25. Intervallo di valori numerici validi
- 26. I cookie HTTP sono specifici per porta?
- 27. Quali sono i caratteri validi che possono essere visualizzati in un host URL?
- 28. Perché i tipi senza costruttori di dati sono validi?
- 29. Quali sono i casi di utilizzo validi di goto in PHP?
- 30. kwargs Pass con chiave = coppie di valori validi per funzionare
grazie per il collegamento bonus – aWebDeveloper