shopit-back/app/Domains/StorageTest/Controllers/S3TestController.php

40 lines
1.1 KiB
PHP

<?php
namespace App\Domains\StorageTest\Controllers;
use App\Domains\StorageTest\Requests\GenerateS3TemporaryUrlRequest;
use App\Domains\StorageTest\Requests\StoreS3TestFileRequest;
use App\Domains\StorageTest\Services\S3TestService;
use App\Http\Controllers\Controller;
use Illuminate\Http\JsonResponse;
class S3TestController extends Controller
{
public function __construct(
protected S3TestService $s3TestService,
) {
}
public function store(StoreS3TestFileRequest $request): JsonResponse
{
return response()->json(
$this->s3TestService->storeTestFile(
$request->file('file'),
$request->validated('directory'),
(int) $request->validated('expires_in_minutes', 10),
),
201,
);
}
public function temporaryUrl(GenerateS3TemporaryUrlRequest $request): JsonResponse
{
return response()->json(
$this->s3TestService->generateTemporaryUrl(
$request->validated('path'),
(int) $request->validated('expires_in_minutes', 10),
)
);
}
}