El día 25 de abril de 2013 15:53, Jose Caballero
<jcaballero....@gmail.com> escribió:
> Hola,
>
>
>
> necesito comunicar con un web server, usando cualquiera de los cuatro
> metodos HTTP:
>
>  GET
>  PUT
>  POST
>  DELETE
>
> usando las herramientas estandar que vienen con python 2.4
>
> Para poder escoger el metodo que necesito en cada momento, y siguiendo
> una receta que encontre en stackoverflow, he creado una clase
> alreadedor de Request [*]
>
> No parece tener problemas con GET y PUT.
> No lo he probado con DELETE.
> Me falla con POST. Obtengo un error
>
>            HTTP Error 400: BAD REQUEST
>
> Me preguntaba si alguien conoce un forma alternativa para hacer
> llamadas HTTP en python 2.4
> que funcione con al menos GET, PUT y POST.
> Cualquier comentario sera mas que bienvenido.
>
>
>
> Saludos cordiales,
> Jose
>
>
>
> [*]
>
> class RequestWithMethod(urllib2.Request):
>
>     def __init__(self, method, *args, **kwargs):
>         self._method = method
>         urllib2.Request.__init__(self, *args, **kwargs)
>
>     def get_method(self):
>         return self._method
>
>
> opener = urllib2.build_opener(urllib2.BaseHandler)
> request = RequestWithMethod(method, url, data)
> opener.open(request)


Parece que hago ciertos progresos.
Para PUT y GET, al parecer, codificar la informacion de input
almacenada en data en formato JSON parece ser suficiente.
Pero para POST, aparentemente, tengo que pasarla antes por urlencode()
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a