import express from 'express'; import fetch from 'node-fetch'; const app = express(); app.use(express.raw({type: '*/*'})); // Hello World на главной app.get('/', (req, res) => { res.send('Hello World'); }); // Прокси для всех остальных путей app.all('*', async (req, res) => { if (req.url === '/') return; try { const url = `https://api.groq.com${req.url}`; // Копируем и фильтруем заголовки const headers = {...req.headers}; delete headers['host']; delete headers['content-length']; const response = await fetch(url, { method: req.method, headers, body: req.method !== 'GET' ? req.body : undefined }); // Streaming response if (response.headers.get('content-type')?.includes('text/event-stream')) { res.setHeader('Content-Type', 'text/event-stream'); response.body.pipe(res); return; } // Regular response const data = await response.buffer(); res.status(response.status); res.set('Content-Type', response.headers.get('content-type')); res.send(data); } catch (error) { res.status(500).send(error.message); } }); app.listen(7860, '0.0.0.0', () => { console.log('Server running on port 7860'); });