при использовании BinaryFileResponse изменения контрольной суммы файла - PullRequest
0 голосов
/ 28 мая 2019

Я использовал класс BinaryFileResponse, чтобы создать ответ для загрузки файла. Файл представляет собой ZIP-файл. контрольная сумма файла отличается после загрузки файла. почему это происходит и можем ли мы отправить исходный файл в качестве ответа.

$response = new BinaryFileResponse($filePath);

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

return $response->send();

1 Ответ

1 голос
/ 03 июня 2019

Если вы находитесь в контроллере, ->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;
    }
}
...