From 88ed162dae79256478a075ef96d10cf135112444 Mon Sep 17 00:00:00 2001 From: mdipierro Date: Sat, 21 Mar 2020 12:18:15 -0700 Subject: [PATCH] fixes #2262, body decode on py3, thanks liuyigh --- gluon/globals.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gluon/globals.py b/gluon/globals.py index b98fe306..5ecfcafb 100644 --- a/gluon/globals.py +++ b/gluon/globals.py @@ -242,7 +242,8 @@ class Request(Storage): # parse POST variables on POST, PUT, BOTH only in post_vars if body and not is_json and env.request_method in ('POST', 'PUT', 'DELETE', 'BOTH'): query_string = env.pop('QUERY_STRING', None) - dpost = cgi.FieldStorage(fp=body, environ=env, keep_blank_values=1) + decoded_body = body if global_settings.is_py2 else body.decode() + dpost = cgi.FieldStorage(fp=decoded_body, environ=env, keep_blank_values=1) try: post_vars.update(dpost) except: