Как скачать файл с помощью Storage фасад Laravel без символов ASCII? - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь загрузить файл, используя метод Storage::download() Laravel, но во многих случаях имя файла написано японскими символами. Однако в таких случаях Laravel выдает ошибку The filename fallback must only contain ASCII characters. Эта ошибка выдается этим файлом: /vendor/symfony/http-foundation/HeaderUtils.php Итак, как я могу скачать файл с помощью Storage фасад Laravel не в ASCII-символах?

1 Ответ

0 голосов
/ 16 апреля 2019

внести изменения в src/Illuminate/Filesystem/FilesystemAdapter.php

в функции public function response

вместо $disposition = $response->headers->makeDisposition($disposition, $name ?? basename($path));

добавить следующее:

$filenameFallback = Str::ascii(basename($path));
$disposition = $response->headers->makeDisposition($disposition, $name ?? $filenameFallback, $filenameFallback);

для получения дополнительной информации нажмите здесь

...