RFC 2068:Hypertext Transfer Protocol -- HTTP/1.1
RFC-Ref

negotiation


Click on the red underlined text to get to the source

... An entity included with a response that is subject to content negotiation, as described in section 12. There may exist multiple representations associated with a particular response status. ...
... representations associated with a particular response status. content negotiation The mechanism for selecting the appropriate representation when servicing a request, as described in section 12. The ...
... representations is termed a `variant.' Use of the term `variant' does not necessarily imply that the resource is subject to content negotiation. client ...


... and Accept (section 14.1) header fields in order to provide open and extensible data typing and type negotiation. media-type ...
... HTTP content negotiation (section 12) uses short "floating point" numbers to indicate the relative importance ("weight") of various ...


... Negotiation ...


... representations, each with its own specific location, and agent- driven negotiation information (section 12) is being provided so that the user (or user agent) can select a preferred representation and ...


... Content Negotiation ...
... entity types. For that reason, HTTP has provisions for several mechanisms for "content negotiation" -- the process of selecting the best representation for a given response ...
... when there are multiple representations available. Note: This is not called "format negotiation" because the alternate representations may be of the same media type, but use different ...
... Any response containing an entity-body MAY be subject to negotiation, including error responses. ...
... error responses. There are two kinds of content negotiation which are possible in HTTP: server-driven and agent ...
... HTTP: server-driven and agent-driven negotiation. These two kinds of negotiation are orthogonal and thus may be used separately or in ...
... agent-driven negotiation. These two kinds of negotiation are orthogonal and thus may be used separately or in combination. One method of combination, referred to as transparent ...
... combination. One method of combination, referred to as transparent negotiation, occurs when a cache uses the agent-driven negotiation ...
... negotiation, occurs when a cache uses the agent-driven negotiation information provided by the origin server in order to provide server-driven negotiation ...
... negotiation information provided by the origin server in order to provide server-driven negotiation for subsequent requests. ...
... Server-driven Negotiation ...
... an algorithm located at the server, it is called server-driven negotiation. Selection is based on the available representations of the response (the dimensions over which it can vary; e.g. language, ...
... client). Server-driven negotiation is advantageous when the algorithm for selecting from among the available representations is difficult to ...
... preferences for such a response. Server-driven negotiation has disadvantages: 1. It is impossible for the server to accurately determine what might be ...
... HTTP/1.1 includes the following request-header fields for enabling server-driven negotiation through description of user agent capabilities and user preferences: Accept (section 14.1), Accept- ...
... header field (section 14.43) in any cachable response based on server-driven negotiation. The Vary header field describes the dimensions over which the response might vary (i.e. the dimensions over which the ...
... requirements described in section 13.6 that describes the interactions between caching and content negotiation. ...
... Agent-driven Negotiation ...
... With agent-driven negotiation, selection of the best representation for a response is performed by the user agent ...
... Agent-driven negotiation is advantageous when the response would vary over commonly-used dimensions (such as type, language, or encoding ...
... Agent-driven negotiation suffers from the disadvantage of needing a second request to obtain the best alternate representation. This second request is only efficient when caching is used. In addition, ...
... status codes for enabling agent-driven negotiation when the server is unwilling or unable to provide a varying response using server-driven negotiation ...
... negotiation when the server is unwilling or unable to provide a varying response using server-driven negotiation. ...
... Transparent Negotiation ...
... Transparent negotiation is a combination of both server-driven and agent-driven negotiation ...
... negotiation is a combination of both server-driven and agent-driven negotiation. When a cache is supplied with a form of the list of available representations of the response (as in agent ...
... list of available representations of the response (as in agent-driven negotiation) and the dimensions of variance are completely understood by the cache, then the cache ...
... cache, then the cache becomes capable of performing server- driven negotiation on behalf of the origin server for subsequent requests on that resource. ...
... requests on that resource. Transparent negotiation has the advantage of distributing the negotiation work that would otherwise be required of the origin ...
... Transparent negotiation has the advantage of distributing the negotiation work that would otherwise be required of the origin server and also removing the second request delay of agent ...
... removing the second request delay of agent-driven negotiation when the cache is able to correctly guess the right response. ...
... This specification does not define any mechanism for transparent negotiation, though it also does not prevent any such mechanism from being developed as an extension and used within HTTP/1.1. An HTTP/1.1 ...
... HTTP/1.1 cache performing transparent negotiation MUST include a Vary header field in the response (defining the dimensions of its variance) if it is cachable to ensure correct interoperation with all HTTP/1.1 ...
... clients. The agent-driven negotiation information supplied by the origin server SHOULD be included with the transparently negotiated response. ...


... Use of server-driven content negotiation (section 12), as indicated by the presence of a Vary header field in a response, alters the ...


... response entity was selected from the available representations of the response using server-driven negotiation (section 12). Field- names listed in Vary headers are those of request-headers ...
... header field with any cachable response that is subject to server-driven negotiation. Doing so allows a cache to properly interpret future requests on that ...
... cache to properly interpret future requests on that resource and informs the user agent about the presence of negotiation on that resource. A server SHOULD include an appropriate Vary header field with a non-cachable response that is subject ...
... header field with a non-cachable response that is subject to server-driven negotiation, since this might provide the user agent with useful information about the dimensions over which the response might vary. ...


... representation which better fits the desires of its user (described as agent-driven negotiation in section 12). The Alternates header field ...
... interpretation of the response or the available representations. It is expected that Alternates will provide a significant improvement over the server-driven negotiation provided by the Vary field for those resources that vary over common dimensions like type and language ...



Google
Web
RFC-Ref