Files
aranroig.com/frontend/app/composables/useApi.ts
BinarySandia04 6e4a9ac967
All checks were successful
Build and Deploy Nuxt / build (push) Successful in 2m1s
Place
2026-06-11 23:47:37 +02:00

27 lines
733 B
TypeScript

// composables/useApi.js
import { ref } from 'vue'
export default function useApi() {
const config = useRuntimeConfig()
const baseUrl = config.public.apiBaseUrl
// Generic GET request
const get = async (endpoint) => {
const res = await fetch(`${baseUrl}${endpoint}`)
if (!res.ok) throw new Error(`API GET ${endpoint} failed`)
return res.json()
}
// Generic POST request
const post = async (endpoint, payload) => {
const res = await fetch(`${baseUrl}${endpoint}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
})
if (!res.ok) throw new Error(`API POST ${endpoint} failed`)
return res.json()
}
return { get, post }
}