Я отправляю запрос POST с телом JSON на сервер Django (довольно стандартный). На сервере мне нужно декодировать это с помощью json.loads()
.
Проблема в том, как получить тело запроса в строковом формате?
В настоящее время у меня есть следующий код:
body_data = {}
if request.META.get('CONTENT_TYPE', '').lower() == 'application/json' and len(request.body) > 0:
try:
body_data = json.loads(request.body)
except Exception as e:
return HttpResponseBadRequest(json.dumps({'error': 'Invalid request: {0}'.format(str(e))}), content_type="application/json")
Однако это дает ошибку the JSON object must be str, not 'bytes'
.
Как получить тело запроса в виде строки с применением правильной кодировки?