原图保护功能

This commit is contained in:
Wisp X
2022-01-17 09:59:55 +08:00
parent 90eb5c71e9
commit c9bca05daa
6 changed files with 56 additions and 5 deletions
@@ -14,6 +14,7 @@ use Illuminate\Http\Response;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Illuminate\View\View;
use League\Flysystem\FilesystemException;
class ImageController extends Controller
{
@@ -84,6 +85,20 @@ class ImageController extends Controller
return $this->success('success', compact('image'));
}
public function output(Request $request)
{
/** @var Image $image */
$image = Image::query()->where('key', $request->route('key'))->firstOr(fn() => abort(404));
try {
$stream = $image->filesystem()->readStream($image->pathname);
} catch (FilesystemException $e) {
abort(404);
}
$img = \Intervention\Image\Facades\Image::make($stream);
// ...
return $img->response(quality: 100);
}
public function permission(Request $request): Response
{
/** @var User $user */