Как получить доступ к входящим данным post внутри промежуточного ПО Django?
Я пишу промежуточное ПО, в котором мне нужно получить доступ к почтовым данным, но ни один из ответов не разрешает мои сомнения, я читаю данные следующим образом, но это работает в postman, но выдает ошибку в браузере
dict_str = request.body.decode("UTF-8")
любая помощь будет высоко оценена
ошибка
RawPostDataException at /accounts/api/v1/register/
You cannot access body after reading from request's data stream
Вы можете получить reqeust.data
, как только тело POST будет разобрано на DRF, доступ к телу будет затруднен.
Вы можете попробовать это, я надеюсь, что это сработает
import json
import ast
def CustomMiddleware(get_response):
def middleware(request):
bytes_request_data = getattr(request, '_body', request.body)
if bytes_request_data:
request_data = ast.literal_eval(bytes_request_data.decode('utf-8'))
print(request_data)