httpwg / httpbis-issues

1 stars 1 forks source link

Request that the WG reconsider section 3.4: Content Negotiation #519

Closed mnot closed 3 years ago

mnot commented 10 years ago

Henry S. Thompson:

It's my impression that content negotiation hasn't turned out to play the kind of significant role in Web Architecture in general, or in HTTP use in particular, that was expected for it.

I think the section on conneg in p2-semantics 1 is so out-of-step with actually deployment, usage and expectations that to publish it as it stands would be a serious mistake.

In particular, the discussion of the relative disadvantages of the newly (re-)named 'proactive' and 'reactive' variants are not only out-of-date, but also this discussion appears to at least this reader to amount to a recommendation for 'reactive' negotiation. Yet as far as I can tell no user agents or servers actually support this approach today, as it's described here.

I was sufficiently concerned about this question to undertake a moderately extensive empirical investigation 2. To summarise perhaps too briefly, I found no evidence of the use of reactive conneg in over 75 million HTTP request/response exchanges.

I think 3.4 can and should be substantially simplified, with all the evaluative/speculative prose removed, focussing simply on the semantics of the Accept... headers and the 300 and 406 status codes, perhaps also making clear that 'proactive' conneg is the only form of conneg with any signficant degree of server-side support.

2 discusses all this at more length -- I hope it will be helpful. I am of course aware that personal experience, backed up by one small study, may well be misleading, but I did look moderately hard to find any other relevant experimental results without success. It is less likely, but not impossible, that what I report in 2 about what is implemented in IIS, Apache and the major web browsers is also mistaken. On either count, I would welcome concrete evidence of where I've misunderstood or misrepresented the actual situation.

ht

1 http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-24#section-3.4 2 http://www.ltg.ed.ac.uk/~ht/reactive_conneg.html

Reported by julian.reschke@gmx.de, migrated from https://trac.ietf.org/trac/httpbis/ticket/519

mnot commented 10 years ago

fielding@gbiv.com commented:

I think this ticket is based on a fundamental misunderstanding of the protocol and the various ways of negotiating content. Perhaps it would help to actually read these sections of the spec, since reactive negotiation is not limited to 300 and 406 responses and is, in fact, the most common form of content selection on the Web (any site that provides links to different language variations is using manual reactive negotiation). Automated selection is used extensively within the content management industry, primarily using client-side javascript libraries. Apache has implemented both forms of content negotiation (in a multitude of modules) since 1995.

mnot commented 10 years ago
mnot commented 10 years ago

fielding@gbiv.com changed milestone from unassigned to 25

mnot commented 10 years ago
mnot commented 10 years ago