INNER CODE UNIT · JavaScript

timeout

ImranR98/apps.obtainium.imranr.dev · scripts/validate_icons.js:44

    const timeout = setTimeout(() => controller.abort(), TIMEOUT_MS)
    try {
      const response = await fetch(url, {
        signal: controller.signal,
        headers: { 'User-Agent': USER_AGENT, 'Accept': 'image/*' }
      })
      if (!response.ok) {
        const inconclusive =
          response.status === 403 || response.status === 408 || response.status === 429 || response.status >= 500
        if (inconclusive && attempt < ATTEMPTS) {
          lastError = new Error(`HTTP ${response.status}`)
          await new Promise(resolve => setTimeout(resolve, 500 * attempt))
          continue
        }
        return { ok: false, definitive: !inconclusive, reason: `HTTP ${response.status}` }
      }
      const buffer = Buffer.from(await response.arrayBuffer())
      if (isIco(buffer, response.headers.get('content-type'))) {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…