ho il seguente codice per una vista di DRF:Django Riposo quadro: request.data vuoto
from rest_framework import viewsets
class MyViewSet(viewsets.ViewSet):
def update(self, request, pk = None):
print pk
print request.data
io chiamo l'URL via python-richieste nel seguente modo:
import requests
payload = {"foo":"bar"}
headers = {'Content-type': 'application/json'}
r = requests.put("https://.../myPk", data= payload, headers=headers)
ma quando la richiesta viene ricevuta dal server, request.data è vuoto. Qui c'è l'output:
myPk
<QueryDict: {}>
Come posso risolvere questo problema?
Prova utilizzando requests.post – Mikeec3
Mikeec3 il doc di framwork riposo dice: _request.data restituisce il contenuto analizzato del corpo della richiesta. Questo è simile alla richiesta standard. Attributi POST e request.FILES tranne che: - Include tutto il contenuto analizzato, inclusi gli input di file e non file. ** - Supporta l'analisi del contenuto dei metodi HTTP diversi dal POST, il che significa che è possibile accedere al contenuto delle richieste PUT e PATCH. ** - Supporta l'analisi flessibile delle richieste del framework REST, piuttosto che il solo supporto dei dati del modulo. Ad esempio, puoi gestire i dati JSON in entrata nello stesso modo in cui gestisci i dati dei moduli in arrivo. – floatingpurr