log probing
This commit is contained in:
@@ -721,6 +721,7 @@ App.videos = App.videos || {};
|
||||
const controller = new AbortController();
|
||||
const timer = setTimeout(() => controller.abort(), DIRECT_PROBE_TIMEOUT_MS);
|
||||
let ok = false;
|
||||
let detail = '';
|
||||
try {
|
||||
// A simple GET (no custom headers) avoids a CORS preflight. If
|
||||
// the response is readable and successful, CORS + reachability
|
||||
@@ -733,14 +734,17 @@ App.videos = App.videos || {};
|
||||
signal: controller.signal
|
||||
});
|
||||
ok = res.ok || res.status === 206;
|
||||
detail = `HTTP ${res.status}`;
|
||||
controller.abort();
|
||||
} catch (err) {
|
||||
ok = false;
|
||||
detail = (err && err.name === 'AbortError') ? 'timeout' : (err && err.message) || 'fetch failed';
|
||||
} finally {
|
||||
clearTimeout(timer);
|
||||
}
|
||||
App.videos._directStatus.set(url, ok);
|
||||
directPending.delete(url);
|
||||
console.log(`[direct-probe] ${ok ? 'DIRECT' : 'PROXY '} (${detail}) ${url}`);
|
||||
return ok;
|
||||
})();
|
||||
directPending.set(url, promise);
|
||||
|
||||
Reference in New Issue
Block a user