2012-10-11 24 views
27

En mi respuesta ajax, el encabezado de control de caché se muestra en el marcado.Symfony Ajax Response muestra el encabezado de caché

HTTP/1.0 200 OK Cache-Control: no-cache Fecha: Jue 11 Oct 2012 09:00:59 GMT

que espera la cabecera de estar en las cabeceras y no en el marcado.

Aquí está mi controlador de extracto de acción:

... 
$template = $this->render('list.html.twig', array(
       'data' => $data 
        )); 
return new Response($template); 
... 

¿Por qué es esto y cómo puedo hacer que esta desaparezca?

+0

Agregue más ejemplos de código: cómo maneja los datos en el cliente, etc. –

+0

la vista se obtiene a través de jquery: result_div.load (route); – ivoba

Respuesta

76

El método render() muestra el encabezado.

Puede usar el método renderView(). Este método no muestra el encabezado, solo genera html.

Espero que sea útil. :)

+1

sí, eso es todo! thx – ivoba

+2

¡Gracias! La mejor solución para KnpSnappyBundle y wkhtmltopdf –

+0

Esto me estaba volviendo loco, y esto lo solucionó, ¡gracias! –

11

Puede hacerlo

$template = $this->render('list.html.twig', array()); 
return new Response($template->getContent()); 

O hacer esto

$template = $this->renderView('list.html.twig', array()); 
return new Response($template); 

En segundo lugar es más apropiado.

+0

No funciona en mi caso. – SunUser

Cuestiones relacionadas