[pyar] [Django] Como cachear cuando hay CSRF tokens?

Pedro Jose Pezzarini jose2190 en gmail.com
Mie Jul 16 21:24:43 ART 2014


Crea un service que solo retorne un csrftoken, y antes de enviar el
formulario, anexá el token como un input en hidden.

El html te va a quedar cacheado y solo vas a enviar el token anexado.

Espero te sirva mis 2 centavos.

Saludos!


El 16 de julio de 2014, 21:10, ken248000 en gmail.com <ken248000 en gmail.com>
escribió:

> Django carga el token en una cookie llamada "csrftoken",
> Deberias poder obtenerla con javascript y setear el input csrf de tu form.
>
>
> 2014-07-14 16:19 GMT-03:00 Andres Riancho <andres.riancho en gmail.com>:
>
> Ezequiel,
>>
>>     Gracias por la pronta respuesta, tu propuesta de usar AJAX es algo
>> que querría evitar si es posible, principalmente porque agrega un HTTP
>> request para la carga del form (o al menos para la carga del token).
>> Con las opciones que estaba viendo, y referencie en el email original,
>> todo se cargaría en un solo request HTTP y sin  cambiar nada del
>> codigo front-end.
>>
>>     Entiendo que no existe una solución perfecta y que posiblemente
>> tenga que ir por este workaround pero... no hay nada mejor?
>>
>> Saludos,
>>
>> 2014-07-14 16:11 GMT-03:00 Ezequiel Gonzalez Rial <gonrial en gmail.com>:
>> > Hola Andrés,
>> >
>> > Si vas a cachear olvidate del CSRF. La idea de cachear es que no tengas
>> > carga dinámica. Si tal como estás diciendo lo que necesitas es que
>> todas las
>> > vistas tengan un formulario, entonces lo que te recomiendo es que uses
>> AJAX
>> > para hacer esa parte de la carga. De esa forma, lo estático se carga
>> rápido
>> > y cacheado y después podes aplicar toda la lógica necesaria para que ese
>> > formulario aparezca como tiene que procesarse.
>> >
>> > Saludos,
>> >
>> > Ezequiel
>> >
>> >
>> > El 14 de julio de 2014, 15:50, Andres Riancho <andres.riancho en gmail.com
>> >
>> > escribió:
>> >>
>> >> Lista,
>> >>
>> >>     Estuve leyendo bastante sobre como hacer caching del HTML generado
>> >> por views en Django y los problemas que existen (un gran resumen aqui
>> >> [0]); llegando a la conclusión principal de que hacer caching bien es
>> >> dificil ;) y como secundaria que existen distintas maneras de hacerlo:
>> >>
>> >>  * Varnish + ESI: No me gusto mucho ya que en las workstations de los
>> >> devs habría que instalar Varnish, configurarlo, etc.
>> >>
>> >>  * Two phase template rendering con cosas como django-phased [1],
>> >> django-twophase [2] o el partial caching de django-adv-cache-tag [3].
>> >> Ninguno de estos proyectos, salvo quizás django-adv-cache-tag tienen
>> >> muchos releases/contribuciones/actividad; por lo que me da la
>> >> impresión de que no estoy yendo por el camino correcto.
>> >>
>> >>     Entonces, que me recomiendan para hacer caching de views en sites
>> >> con Django? Cual es el mejor approach para los tokens CSRF si por
>> >> ejemplo tengo un contact form en el footer de todas mis views?
>> >>
>> >> [0]
>> https://groups.google.com/forum/#!topic/django-developers/EojHkVKxVWc
>> >> [1] http://django-phased.readthedocs.org/en/latest/
>> >> [2] https://launchpad.net/django-twophase
>> >> [3] http://documentup.com/twidi/django-adv-cache-tag
>> >>
>> >> Saludos,
>> >> --
>> >> Andrés Riancho
>> >> Project Leader at w3af - http://w3af.org/
>> >> Web Application Attack and Audit Framework
>> >> Twitter: @w3af
>> >> GPG: 0x93C344F3
>> >> _______________________________________________
>> >> pyar mailing list pyar en python.org.ar
>> >> http://listas.python.org.ar/listinfo/pyar
>> >>
>> >> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>> >>
>> >> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> >> Argentina - http://www.usla.org.ar
>> >
>> >
>> >
>> > _______________________________________________
>> > pyar mailing list pyar en python.org.ar
>> > http://listas.python.org.ar/listinfo/pyar
>> >
>> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>> >
>> > La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> > Argentina - http://www.usla.org.ar
>>
>>
>>
>> --
>> Andrés Riancho
>> Project Leader at w3af - http://w3af.org/
>> Web Application Attack and Audit Framework
>> Twitter: @w3af
>> GPG: 0x93C344F3
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140716/a488b24d/attachment.html>


More information about the pyar mailing list