import type {H3Event} from "h3"; export default defineEventHandler(async (event) => { const user = process.env.NUXT_PRIVATE_SUPERUSER_USER; const password = process.env.NUXT_PRIVATE_SUPERUSER_PASSWORD; if (user == null || password == null) { console.error("Username or password is null."); throw Error(); } const credentials: string = "Basic " + Buffer.from(user + ':' + password).toString('base64'); event.headers.delete("host"); event.headers.delete("origin"); event.headers.set("authorization", credentials) return sendProxy(event, process.env.NUXT_PUBLIC_BASE_URL + event.path, { fetchOptions: { method: event.method, headers: event.headers, body: await readBody(event) } }); }) async function readBody(event: H3Event) { if (["POST", "PUT", "PATCH"].includes(event.method)) { return await readRawBody(event); } return undefined; }