PEP3333 and PATH_INFO

Chris McDonough <[email protected]> Tue, 03 Jan 2012 05:52:36 -0500
Newsgroups gmane.comp.python.web
Message-ID <1325587956.5647.102.camel@thinko>
Perrenial topic, it seems, from the archives.

As far as I can tell from PEP 3333, every WSGI application that wants to
run on both Python 2 and Python 3 and which uses PATH_INFO will need to
define a helper function something like this:

"""
import sys

def decode_path_info(environ, encoding='utf-8'):
    PY3 = sys.version_info[0] == 3
    path_info = environ['PATH_INFO']
    if PY3:
        return path_info.encode('latin-1').decode(encoding)
    else:
        return path_info.decode(encoding)
"""

Is there a more elegant way to handle this?

- C


_______________________________________________
Web-SIG mailing list
[email protected]
Web SIG: http://www.python.org/sigs/web-sig
Unsubscribe: http://mail.python.org/mailman/options/web-sig/gcpw-web-sig%40m.gmane.org