Laravel文件系统在上传后直接获取文件URL



是否有一种方法可以在上传后直接获取您上传的文件的路径,因此您不必在响应中编写整个URL,我的方法肯定是不正确的,因为如果将来我们可能想要保存在另一个不在存储中的文件系统磁盘中,我想返回特定的URL。

$image = interventionImage::make(request('url'))->resize(600, 300, function ($constraint) {
$constraint->aspectRatio();
})->encode('webp', 75);

$time = date('H-i-s');
$date = date('d-m-Y');
Storage::disk('public')->put('uploads/products/'.$date.'/'.$time.'.webp', $image);

return response()->json([
'success' => 1, 
'file' => [
'url' => asset('/storage/uploads/products/'.$date.'/'.$time.'.webp')
]
]);

将路径放入变量中?

$image = interventionImage::make(request('url'))->resize(600, 300, function ($constraint) {
$constraint->aspectRatio();
})->encode('webp', 75);
$path = sprintf('uploads/products/%s/%s.webp',date('d-m-Y'),date('H-i-s'));
Storage::disk($path, $image);

return response()->json([
'success' => 1, 
'file' => [
'url' => $path
]
]);

如果多个文件可以在同一秒内上传(即多个文件输入),不要使用时间作为唯一指标