- From: Martijn Faassen <faassen@startifact.com>
- Date: Mon, 11 Aug 2014 16:42:46 +0200
- To: ietf-http-wg@w3.org
Hi there, [I hope this question reaches the right mailing list] I'm trying to find the equivalent of RFC 2616, section 13.5.1 in the new specs. This section defines those header fields considered hop-by-hop, i.e.: - Connection - Keep-Alive - Proxy-Authenticate - Proxy-Authorization - TE - Trailers - Transfer-Encoding - Upgrade I need such a list in order to implement a Python WSGI-based proxy. See PEP 3333: http://legacy.python.org/dev/peps/pep-3333/#other-http-features However, because WSGI servers and applications do not communicate via HTTP, what RFC 2616 calls "hop-by-hop" headers do not apply to WSGI internal communications. WSGI applications must not generate any "hop-by-hop" headers [4], attempt to use HTTP features that would require them to generate such headers, or rely on the content of any incoming "hop-by-hop" headers in the environ dictionary. WSGI servers must handle any supported inbound "hop-by-hop" headers on their own, such as by decoding any inbound Transfer-Encoding, including chunked encoding if applicable. So, a WSGI proxy has to remove any hop-by-hop headers from the response of the host it is proxying, and not pass them along. WSGI has its own iterator based mechanism to support chunking, and a WSGI server can then add the appropriate headers. In section 13.5.1 of RFC 2616 these hop-by-hop headers are specified, but I can't find the equivalent in the newer RFCs. I do find section 6.1 in rfc7230, so I think this means that a conforming server would list related headers in the Connection. But what about Transfer-Encoding, for instance? A server that sends "Connection: close" may not send Transfer-Encoding? It's certainly possible that I'm missing something. I haven't read the complete specs yet. But any guidance would be appreciated. Regards, Martijn
Received on Monday, 11 August 2014 14:43:17 UTC