3. Using the Accept-Encoding Header Field in Responses (uso di Accept-Encoding nelle risposte)
La Sezione 5.3.4 di [RFC7231] definisce "Accept-Encoding" solo come campo di intestazione di richiesta.
Questa specifica estende tale definizione per consentire "Accept-Encoding" anche come campo di intestazione di risposta. Quando è presente in una risposta, indica quali Content Codings la risorsa era disposta ad accettare nella richiesta associata. Un valore che contiene solo "identity" implica che nessuna Content Coding era supportata.
Si noti che questa informazione è specifica della richiesta associata; l'insieme delle codifiche supportate può essere diverso per altre risorse sullo stesso server e può cambiare nel tempo o dipendere da altri aspetti della richiesta (come il metodo).
La Sezione 6.5.13 di [RFC7231] definisce il codice di stato 415 (Unsupported Media Type) come applicabile a problemi relativi sia ai tipi di media sia alle Content Codings.
I server che falliscono una richiesta a causa di una Content Coding non supportata dovrebbero rispondere con stato 415 e dovrebbero includere un campo "Accept-Encoding" in tale risposta, consentendo ai client di distinguere problemi legati alle Content Codings da quelli legati ai tipi di media. Per evitare confusione con problemi di tipo di media, i server che falliscono una richiesta con stato 415 per motivi non correlati alle Content Codings MUST NOT includere il campo "Accept-Encoding".
Si prevede che l'uso più comune di "Accept-Encoding" nelle risposte avrà il codice di stato 415 (Unsupported Media Type), in risposta all'uso ottimistico di una Content Coding da parte dei client. Tuttavia, il campo può anche indicare ai client che le Content Codings sono supportate, per ottimizzare interazioni future. Ad esempio, una risorsa potrebbe includerlo in una risposta 2xx quando il payload della richiesta era abbastanza grande da giustificare una codifica di compressione ma il client non l'ha usata.