уроки - python rest framework




используя интерфейс django-rest с интерфейсом http put (2)

Я пытаюсь понять, как реализовать мой первый интерфейс RESTful, используя Django и django-rest-interface. У меня проблемы с запросами HTTP PUT.

Как получить доступ к параметрам запроса PUT? Я думал, что они будут в массиве request.POST, поскольку PUT несколько похож на POST в моем понимании, но этот массив всегда пуст.

Что я делаю не так?

Спасибо за помощь


request.POST обрабатывает форматированные данные в словаре, что имеет смысл только для представления формы веб-браузера. Для PUT нет эквивалента, поскольку веб-браузеры не формируют формы; представленные данные могут иметь любой тип контента. Вам нужно будет получить необработанные данные из request.raw_post_data, возможно, проверьте тип содержимого и обработайте его, однако это имеет смысл для вашего приложения.

Дополнительная информация в этой теме .


если вы указали в отправке ResourceBase, есть строка, например:

elif request_method == 'PUT':
    load_put_and_files(request)
    return target.update(request, *args, **kwargs)

load_put_and_files позволяет подготовить для вас запрос.PUT с данными y request.method PUT, поэтому вам не нужно беспокоиться об этом ...





django