Fetch API یک ابزار فوقالعاده توی جاوا اسکریپت هست که به شما اجازه میده درخواستهای HTTP رو به سرور ارسال کنید و پاسخها رو به راحتی دریافت کنید. این API نسبت به روش قدیمی XMLHttpRequest خیلی سادهتر و کارآمدتره و از Promiseها استفاده میکنه که کدنویسی رو خیلی راحتتر و قابل فهمتر میکنه.
با Fetch API میتونید انواع درخواستهای HTTP مثل GET، POST، PUT و DELETE رو ارسال کنید. برای مثال، فرض کنید میخواهید دادهها رو از یک API بگیرید، کافیه این کد رو بنویسید:
javascriptCopy codefetch('https://api.example.com/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error));
این کد یک درخواست GET به سرور میفرسته و جواب رو به فرمت JSON دریافت میکنه. استفاده از Promiseها به شما اجازه میده تا بدون انتظار برای پاسخ سرور، به کارهای دیگهتون برسید. Promiseها سه وضعیت دارن: pending (در حال انتظار)، fulfilled (موفقیتآمیز)، و rejected (ناموفق).
وقتی از Fetch API استفاده میکنید، یک شیء Response دریافت میکنید که شامل اطلاعاتی مثل status (وضعیت پاسخ)، statusText (متن وضعیت)، headers (هدرهای پاسخ)، و روشهایی مثل json()، text() و blob() برای تبدیل پاسخ به فرمتهای مختلف هست. مثلاً اگه بخواهید پاسخ رو به JSON تبدیل کنید و توی کنسول چاپ کنید، میتونید این کد رو بنویسید:
javascriptCopy codefetch('https://api.example.com/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error));
Fetch API مزایای زیادی داره، از جمله سادگی کدنویسی، پشتیبانی از انواع درخواستهای HTTP، عملکرد بهتر و مدیریت بهتر خطاها. البته، یه سری معایب هم داره مثل پشتیبانی محدود توی مرورگرهای قدیمی و نیاز به تنظیمات دستی برای بعضی ویژگیها مثل تایماوت و ارسال کوکیها.
پس اگه دنبال یه راه ساده و کارآمد برای ارسال درخواستهای HTTP هستید، Fetch API بهترین گزینه است و کلی امکانات خوب داره که کارتون رو راحتتر میکنه!