Accéder à de la donnée de formulaire en PUT depuis Django
Par défaut, Django fournit de quoi accéder aux variables GET ou POST, mais pas PUT.
Voici comment y remédier:
from django.urls import path
from django.http import HttpRequest, HttpResponse, JsonResponse
from django.views.decorators.csrf import csrf_exempt
from django.http import QueryDict
@csrf_exempt
def read_put_data(request: HttpRequest) -> JsonResponse:
put_data = QueryDict(request.body)
return JsonResponse({"put_data": put_data})
urlpatterns = [path("putest/", read_put_data),]
Pour tester avec CURL:
curl -X PUT -d arg=val -d arg2=val2 localhost:8000/putest/