Hello, I'm writing HTTP proxy software and there's a detail of RFC 2616 that I don't understand. Many headers (e.g. Accept-Encoding, Accept-Charset) have grammar of the form 1#(...). However, there are two headers - Accept and TE - that have grammar of the form #(...).
This difference seems to mean that an Accept header with no value is explicitly allowed and, therefore, that it has different semantics from a request with no Accept header at all. What are these semantics? As far as I can make out, a request with Accept: present but with no value should just result in a 406 Not Acceptable response. (Of course, some servers ignore the request Accept header entirely.) Thanks in advance, -- Daniel Armak