TGViewer
CodeVerse | دنیای برنامه نویسان CodeVerse | دنیای برنامه نویسان @codeverse_dev · 1.06K subscribers
Post #485 260
متد ()Promise.race برای API نجاتت میده

فرض کنید API شما گاهی ۱۰ ثانیه طول می‌کشد.

اما UI فقط تا ۳ ثانیه می‌تواند منتظر بماند.

اینجاست که ()Promise.race می‌تواند مفید باشد.

مثلاً:

const timeout = new Promise((_, reject) => {
setTimeout(() => {
reject(new Error("Request timeout"));
}, 3000);
});

await Promise.race([
fetch("/api/products"),
timeout
]);

هرکدام زودتر اتفاق بیفتد، نتیجه مشخص می‌شود:

⚡‌حالا API پاسخ دهد ← ادامه بده.

⏱️ سه ثانیه تمام شود ← Timeout.

البته برای پروژه واقعی بهتر است از AbortController هم برای متوقف کردن خود Request استفاده کنید.

🎯 قابلیت Timeout فقط یک قابلیت UX نیست؛ بخشی از طراحی سیستم‌های مقاوم است.

💡 هیچ API نباید بدون محدودیت زمانی منتظر یک سرویس خارجی بماند.

@CodeVerse_dev
  • ❤ 6
  • 👍 2
More from @codeverse_dev
  1. Oct 7, 2026👨‍💻 برنامه‌نویسی با AI راحت‌تر شده؛ پس چرا بعضی Developerها خسته‌تر شده‌اند؟ طبق نظرسنجی…
  2. Oct 7, 2026🚨 وردپرس 7.1.3 منتشر شد؛ این یکی را عقب نینداز وردپرس دیروز نسخه 7.1.3 را منتشر کرد؛ یک آ…
  3. Oct 6, 2026شرکت Google وارد یک درگیری جدی با ناشران شده ⚖️ رگولاتور رقابت لهستان اعلام کرده Google را…
  4. Oct 6, 2026اگر Windows 11 داری، قبل از نصب بعضی آپدیت‌ها حواست باشد ⚠️ مایکروسافت تأیید کرده آپدیت پی…
  5. Oct 6, 2026اگر Chrome استفاده می‌کنی، این آپدیت را جدی بگیر ⚡ نسخه Stable مرورگر Chrome برای دسکتاپ ب…
  6. Oct 6, 2026🖥 سازنده محتوایی؟ ویندوزت بدون این ۵ نرم‌افزار نصفه‌ست! خب راستشو بخوای، من خودم تا چند و…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →