如何访问lumen中上传的文件?

问题描述 投票:0回答:1

我尝试了谷歌上的很多方法,但没有任何效果。我这几天在谷歌上搜索,但仍然没有成功。我正在尝试使用 Lumen API 上传图像,效果很好。但我无法访问这些图像,因为图像位于存储文件夹中。我还尝试了像

ln -s /var/www/storage/app /var/www/public/storage 
这样的命令,但这些命令只运行一次,每次我不想这样做时,我都必须手动运行这些命令。请帮我解决这个问题。

 if ($request->hasFile('thumbnail')) {
                $file = $request->file('thumbnail');
                $allowedfileExtension = ['png', 'jpg', 'jpeg'];

                $extension = $file->getClientOriginalExtension();

                $check = in_array($extension, $allowedfileExtension);
                if ($check) {
                    $name = time() . '.' . $file->getClientOriginalExtension();
                    $file->storeAs('images', $name);
                    $thumbnailUrl = url('storage/images/' . $name);

                    $listing->thumbnail = $thumbnailUrl;
                } else {
                    return response()->json(['message' => 'Please upload correct format of image', 'status' => 400], 400);
                }
            }

任何解决方案表示赞赏!

php laravel lumen
1个回答
0
投票

使用 laravel 的 Storage 门面。

使用 Illuminate\Support\Facades\Storage; 存储::下载('存储/图像'.$name);

默认路径设置为 config/filesystem.php,您可以更改它。

https://laravel.com/docs/10.x/filesystem

© www.soinside.com 2019 - 2024. All rights reserved.