我正在尝试使用Laravel的Storage::download()
方法下载文件,但是在许多情况下,文件名使用日语字符。但是,在这种情况下,Laravel会引发错误The filename fallback must only contain ASCII characters.
,此文件会引发此错误:/vendor/symfony/http-foundation/HeaderUtils.php
那么,如何使用Laravel的Storage Facade以非ASCII字符下载文件?
答案 0 :(得分:0)
在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);
有关更多信息,请单击here