export default async function handler(req, res) {
const chromecastUrls = 'https://githubusercontent.com';
try {
const randomSource = Math.floor(Math.random() * 2);
let finalImageUrl = '';
if (randomSource === 0) {
const response = await fetch(chromecastUrls);
const data = await response.json();
const randomImage = data[Math.floor(Math.random() * data.length)];
finalImageUrl = randomImage.url;
} else {
const randomEarthId = Math.floor(Math.random() * 5000) + 1000;
finalImageUrl = `https://withgoogle.com{randomEarthId}.jpg`;
}
// Вместо редиректа скачиваем картинку в буфер сервера Vercel
const imageResponse = await fetch(finalImageUrl);
const arrayBuffer = await imageResponse.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
// Говорим телефону, что это чистая JPEG картинка
res.setHeader('Content-Type', 'image/jpeg');
res.setHeader('Cache-Control', 'no-store, max-age=0, must-revalidate');
// Отправляем чистый файл напрямую в MacroDroid
return res.status(200).send(buffer);
} catch (error) {
// Резервный вариант, тоже отдаем буфер
const fallbackResponse = await fetch('https://picsum.photos');
const arrayBuffer = await fallbackResponse.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
res.setHeader('Content-Type', 'image/jpeg');
return res.status(200).send(buffer);
}
}