使用BinaryFileResponse时文件校验和更改

时间:2019-05-28 05:05:44

标签: symfony downloadfile

我使用BinaryFileResponse类创建下载文件响应。文件是一个zip文件。 下载文件后,文件校验和不同。 为什么会发生这种情况,我们能否将原始文件作为响应发送。

$response = new BinaryFileResponse($filePath);

$response->headers->set('Content-Type', 'application/octet-stream');
$response->setContentDisposition(
    ResponseHeaderBag::DISPOSITION_ATTACHMENT,
    $fileName
);

return $response->send();

1 个答案:

答案 0 :(得分:1)

如果您在控制器中,则不需要->send() ...

您的代码应为...

<?php

class MyController 
{
    public function action()
    {
        $response = new BinaryFileResponse($filePath);

        $response->headers->set('Content-Type', 'application/octet-stream');
        $response->setContentDisposition(
            ResponseHeaderBag::DISPOSITION_ATTACHMENT,
            $fileName
        );

        return $response;
    }
}