QueenFruits/Backend/app/Http/Controllers/Api/UploadController.php

40 lines
985 B
PHP

<?php
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use App\Services\UploadService;
use App\Traits\ApiResponse;
use Illuminate\Http\Request;
class UploadController extends Controller
{
use ApiResponse;
protected $uploadService;
public function __construct(UploadService $uploadService)
{
$this->uploadService = $uploadService;
}
public function uploadImage(Request $request)
{
$request->validate([
'image' => 'required|image|max:5120',
'type' => 'required|string'
]);
try {
$serverPath = $this->uploadService->uploadImage(
$request->file('image'),
$request->type
);
return $this->successResponse(['server_path' => $serverPath ],'upload image success', 200);
} catch (\Exception $e) {
return $this->errorResponse('upload image failed', 500, $e->getMessage());
}
}
}