Cómo publicar una solicitud de django en un servidor externo

Hola, así que tengo este método en las vistas de django para publicar el archivo en un servidor diferente. Recibo un error HTTP 415 quejándose del tipo de medio de la solicitud. He depurado la solicitud y copiado y pegado su contenido en fiddler. Cuando publiqué lo mismo del fiddler funcionó. Así que no entiendo por qué no funciona con el paquete de solicitudes de python.

Puede alguien ayudarme con esto?

Gracias.

def upload(request): if request.method == 'POST': url=settings.WEBSERVICES_URL+'validate' r = requests.post('http://localhost:9090/validate',data=request) r2 = requests.get('http://localhost:9090/test') return render_to_response("upload.html", context_instance=RequestContext(request)) else: return render_to_response("upload.html", context_instance=RequestContext(request)) 

Hacer esto:

 r = requests.post('http://localhost:9090/validate', data=request.POST) 

Usted está pasando un objeto django.http.HttpRequest completo a requests.post , cuando solo necesita sus datos de publicación.

Si nos fijamos en la documentación de las solicitudes, se dice acerca de la palabra clave de data :

Datos : (opcional) Diccionario, bytes u objeto tipo archivo para enviar en el cuerpo de la Solicitud.

El objeto de request de Django es una instancia de HttpRequest . HttpRequest intentar colocar los datos necesarios en un diccionario y pasarlos a post() .