symfony2重定向到流文件
问题描述:
Hi guys I have a little question in symfony2.
Can you tell me how to redirect in controller to open (stream) a file in asset folder Not to force to download
for example : I have a file in root/web/bundles/ace/file.pdf
I used this code, but this failed to open /stream the file. This code force browser to download
$path = $this->get('kernel')->getRootDir().DIRECTORY_SEPARATOR."..".DIRECTORY_SEPARATOR."web".DIRECTORY_SEPARATOR."bundles".DIRECTORY_SEPARATOR.
"bsibkpm".DIRECTORY_SEPARATOR."download".DIRECTORY_SEPARATOR . $fileName;
//echo $path;die();
$content = file_get_contents($path);
$response = new Response();
$response->headers->set('Content-Type', 'application/pdf');
$response->headers->set('Content-Disposition', 'attachment;filename="'.$fileName);
$response->sendHeaders();
$response->setContent($content);
return $response;``
Many thanks for your help before
Hendrawan
答
You should set Content-Disposition to inline
$response->headers->set('Content-Disposition', 'inline;filename="'.$fileName);
P.S. check this bundle https://github.com/igorw/IgorwFileServeBundle