victories adlı üyeden alıntı: mesajı görüntüle
5 dolara workers limiti kalkıyor, en mantıklısı bana worker kullanmak gibi geliyor, anlık 100k istek kolay kolay cloud bir yapı olmadan stabil hizmet veremez.
hocam sizi buralarda görmek çok güzel streaming konusunda eski yorumlarınızı cok okumuştum.
workers kullanıyorum 5 dolara mesala şu şekilde javascript kodu kullansam yeterli olurmu hocam
function translateResponseHeaders(originalHeaders) {
  const newHeaders = new Headers(originalHeaders);
  // Zararlı veya CORS'u bozan header'lar silinirs
  newHeaders.delete("set-cookie");
  newHeaders.delete("Set-Cookie");
  // CORS ayarları
  newHeaders.set("Access-Control-Allow-Origin", "*");
  newHeaders.set("Access-Control-Allow-Methods", "GET, HEAD, OPTIONS");
  newHeaders.set("Access-Control-Allow-Headers", "*");
  // 2 dakika cache süresi (hem edge cache hem de tarayıcı için)
  newHeaders.set("Cache-Control", "public, max-age=120, s-maxage=120, stale-while-revalidate=30");
  return newHeaders;
}
async function handleRequest(request) {
  const cache = caches.default;
  const cacheKey = new Request(request.url, request);
  // Cache kontrolü
  const cachedResponse = await cache.match(cacheKey);
  if (cachedResponse) {
    return cachedResponse;
  }
  // URL oluştur
  const parsedUrl = new URL(request.url);
  const path = parsedUrl.pathname.replace("/stream", "");
  const search = parsedUrl.search;
  const targetUrl = "https://www.siteadi.com/match.json" + path + search;
  // Orijinal içeriği fetch et
  const originResponse = await fetch(targetUrl);
  // Yeni response hazırla
  const response = new Response(originResponse.body, {
    status: originResponse.status,
    headers: translateResponseHeaders(originResponse.headers),
  });
  // Edge cache'e yaz
  await cache.put(cacheKey, response.clone());
  return response;
}
addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request));
});