Why is response_headers a list instead of a dict? >From RFC 2616 Section 4.2:
The order in which header fields with differing field names are received is not significant. However, it is "good practice" to send general-header fields first, followed by request-header or response- header fields, and ending with the entity-header fields. Multiple message-header fields with the same field-name MAY be present in a message if and only if the entire field-value for that header field is defined as a comma-separated list [i.e., #(values)]. It MUST be possible to combine the multiple header fields into one "field-name: field-value" pair, without changing the semantics of the message, by appending each subsequent field-value to the first, each separated by a comma. In other words: (a) order does not matter, (b) it is reasonable to restrict a header field to a single (header_name, header_value) pair. Indeed, according to the specification, a HTTP Proxy could re-arrange headers and condense N headers of the same type by simply concatenating their values with a comma. I'm asking this because it is quite painful (and very much an unnecessary pain) to work with headers in complex WSGI-based middleware applications. Kind Regards, Clark _______________________________________________ Web-SIG mailing list Web-SIG@python.org Web SIG: http://www.python.org/sigs/web-sig Unsubscribe: http://mail.python.org/mailman/options/web-sig/archive%40mail-archive.com