2014-07-13 14 views
8

J'ai besoin de servir des fichiers pdf via le contrôleur, mais je ne peux pas les ouvrir dans la fenêtre du navigateur. Lorsque j'envoie une réponse avec un fichier pdf, il rend charabia, ou si je suis exemple à http://symfony.com/doc/current/components/http_foundation/introduction.html#serving-files il télécharge le fichier, mais j'ai besoin de l'ouvrir en mode affichage, comment puis-je faire cela?Symfony2 serve ouvrir le fichier pdf

Voici ce que I'v a obtenu jusqu'à présent:

return new Response(readfile('/file/path/file.pdf'), 200, 
    array('Content-Type' => 'application/pdf') 
); 

Suis-je manque quelque chose, ou peut-être il y a quelque chose de mal avec mon php ou la configuration apache?

+2

essayez de définir 'Content-Disposition: inline; filename.pdf' Header. – Rufinus

Répondre

30

trouvé une solution:

Ajouter BinaryFileResponse avant la déclaration de classe contrôleur de example

use Symfony\Component\HttpFoundation\BinaryFileResponse; 

En retour d'action contrôleur BinaryFileResponse

return new BinaryFileResponse('/file/path/file.pdf'); 
-5

J'ai la même question

Essayez de ajoutez ceci:

use \Symfony\Component\HttpFoundation\Response; 
....... 
return $response->headers->set('Content-type' , 'application/pdf'); 
Questions connexes