import { useRuntimeConfig } from "#imports"; export const useApi = async ( path: string, options: { method?: "get" | "post" | "put" | "delete"; body?: any; query?: Record; headers?: HeadersInit; credentials?: RequestCredentials; } = {} ): Promise => { const config = useRuntimeConfig(); const method = options.method ? options.method.toUpperCase() : "GET"; try { const response = await $fetch( `${config.public.apiBase}${config.public.contextPath}${path}`, { method: method as any, body: options.body, query: options.query, credentials: options.credentials || "include", // 쿠키 자동 전송 headers: { "Content-Type": "application/json", ...options.headers, }, } ); return response; } catch (error) { console.error("API 호출 실패:", error); throw error; } };