wechat-article / server /utils /fetch_external.ts
Antigravity
Initialize wechat-article without git history and binary assets
70e483f
Raw
History Blame Contribute Delete
525 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;
}
}