Как скачать файл из PHP с помощью API вызова? - PullRequest
0 голосов
/ 29 января 2019

Мне нужно скачать файл из каталога в Symfony.Проблема в том, что мне нужно загрузить этот файл, когда я аутентифицируюсь.

Для этого я создаю конечную точку (метод GET) с идентификатором (файл id) и выполняю вызов из приложения React.Передача в заголовках носителя авторизации.

Проблема в том, что файл не загружается напрямую, но если я вхожу в DevTools из Chrome, я вижу, что в ответе существует файл, но он не загружается.

Это код PHP:

$file = new File($fullPath);

return $this->file($file);

Как я могу скачать файл?

1 Ответ

0 голосов
/ 30 января 2019

Это пример моего кода:

/**
 * @param Product $product
 * @param TranslatorInterface $translator
 *
 * @SWG\Response(
 *     response=200,
 *     description="Get allergensheet of a product",
 * )
 * @SWG\Tag(name="Product")
 *
 * @Route("/allergensheet/{id}", methods="GET")
 *
 * @Security(name="Bearer")
 * @return Mixed
 */
public function downloadAllergenSheet(Product $product, TranslatorInterface $translator) {

    $allergens = $product->getAllergens();

    if($allergens instanceof Allergens) {

        if($allergens->getHasSheet()) {
            $fs = new Filesystem();

            if($fs->exists($translator->trans($product->getArticleNr() . '_allergensheet'))) {
                return new BinaryFileResponse($translator->trans($product->getArticleNr() . '_allergensheet'));
            }
            else {
                return new JsonResponse(false, Response::HTTP_NO_CONTENT);
            }

        }
        else {
            return new JsonResponse(false, Response::HTTP_NO_CONTENT);
        }

    }
    else {
        return new JsonResponse(false, Response::HTTP_NO_CONTENT);
    }

}

Может быть, это может помочь?Это если для загрузки файла PDF, который содержит некоторую информацию о продукте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...