wechat-article / server /utils /fetch_external.ts
asemxin2000's picture
Deploy wechat-article-exporter to Space
6e41657 verified
Raw
History Blame Contribute Delete
547 Bytes
interface FetchExternalOption {
label: string;
default: any;
}
export async function fetchExternal(url: string, option: FetchExternalOption): Promise<any> {
try {
const resp = await fetch(url, {
signal: AbortSignal.timeout(30_000),
});
if (!resp.ok) {
throw new Error(`${option.label}失败: ${resp.status}`);
}
return await resp.json();
} catch (error) {
// 记录日志,便于后期排查
console.error(`${option.label}失败:`, error);
return option.default;
}
}