diff --git a/src/backend/metadata/tmdb.ts b/src/backend/metadata/tmdb.ts index 331f022f..1cbb24f1 100644 --- a/src/backend/metadata/tmdb.ts +++ b/src/backend/metadata/tmdb.ts @@ -153,6 +153,12 @@ const tmdbHeaders = { Authorization: `Bearer ${apiKey}`, }; +function abortOnTimeout(timeout: number): AbortSignal { + const controller = new AbortController(); + setTimeout(() => controller.abort(), timeout); + return controller.signal; +} + async function get(url: string, params?: object): Promise { if (!apiKey) throw new Error("TMDB API key not set"); try { @@ -162,7 +168,7 @@ async function get(url: string, params?: object): Promise { params: { ...params, }, - signal: AbortSignal.timeout(5000), + signal: abortOnTimeout(5000), }); } catch (err) { return mwFetch(encodeURI(url), { @@ -171,7 +177,7 @@ async function get(url: string, params?: object): Promise { params: { ...params, }, - signal: AbortSignal.timeout(30000), + signal: abortOnTimeout(30000), }); } }