Как вывести данные request.body в django?
Просто работаю над учебниками по Django и играю со всякой всячиной. Просматриваю документацию по HttpResponse и HttpRequest и просто пытаюсь вывести данные, чтобы посмотреть, как все работает.
Однако, когда я пытаюсь вывести на консоль request.body
, я ничего не получаю обратно.
def detail(request, question_id):
current_question_selected = Question.objects.get(pk=question_id)
choices_for_question = current_question_selected.choice_set.all()
context = {"choices_for_question":choices_for_question, "current_question_selected":current_question_selected}
#print(request.META["REMOTE_USER"])
print(request.body)
return render(request, 'polls/detailtext.html', context)
Вот что выводится на экран: буква 'b' с пустой строкой
[28/Jun/2022 10:59:56] "GET /polls/1/ HTTP/1.1" 200 456
b''
Не уверен, что я упускаю
Печать выводит пустую строку, поскольку GET не принимает тело. Взято непосредственно из документации Mozilla Web APIs docs:
Обратите внимание, что запрос, использующий метод GET или HEAD, не может иметь тела, и в этих случаях возвращается null.
Если вы хотите передать данные в GET-запросе, вам нужно передать их как параметры. Затем вы можете получить доступ к параметрам с помощью request.GET
(HttpRequest.GET) или получить доступ к ним по отдельности с помощью request.GET.get('key')
.