vbytes-lan-attendence/web/src/routes/api/events/+server.ts

31 lines
843 B
TypeScript

import type { RequestHandler } from './$types';
import { API_BASE_URL } from '$lib/server/config';
export const GET: RequestHandler = async (event) => {
const url = new URL('/events', API_BASE_URL).toString();
const headers = new Headers();
const cookie = event.request.headers.get('cookie');
if (cookie) {
headers.set('cookie', cookie);
}
headers.set('accept', 'text/event-stream');
const response = await event.fetch(url, {
method: 'GET',
headers,
credentials: 'include'
});
const proxiedHeaders = new Headers(response.headers);
if (!proxiedHeaders.has('content-type')) {
proxiedHeaders.set('content-type', 'text/event-stream');
}
proxiedHeaders.set('cache-control', 'no-cache');
return new Response(response.body, {
status: response.status,
statusText: response.statusText,
headers: proxiedHeaders
});
};