چه وقت هایی از وب سرویس ها استفاده میکنیم
در این مطلب قصد داریم در مورد کجا و چگونه از api استفاده کنیم توضیح دهیم
خواندن و فهمیدن اسناد یک API
نمیخواهیم خیلی دربارهی موارد مفهومی در این قسمت صحبت کنیم. فقط با هم یک API ساده را بررسی میکنیم تا بتوانیم به مراحل بعدی بپردازیم. میخواهیم JavaScript Math Object را بررسی کنیم
در اسناد میبینید که فرمت ورودیهای یک تابع (عدد، آرایهای از اعداد، و …) و فرمت خروجی آن مشخص شده است. اما دقت کنید که حرفی دربارهی منطقِ اجراکنندهی این توابع عنوان نشده است.
مثلا اگر Math.sqrt را در کنسول تایپ کنید (بدون اجرا کردن تابع)، ƒ sqrt() { [native code] } را به عنوان خروجی دریافت میکنید. ماهیت یک API به این صورت است. فرقی نمیکند API یک سیستمعامل یا وب را فراخوانی کنید، اصول تغییری نمیکنند.
مثالهایی پایه از موارد استفادهی API
میتوانید با استفاده از محصولات عرضهکنندگان معروف API، کارهای زیادی انجام دهید. مثلا Google Maps API را در نظر بگیرید. اغلب از دادههای Real-time Mapping یا Traffic Signals برای داشتن تجربهی کاربری بهتر استفاده میشود. مثالی دیگر، Twitter API است که میتوان با استفاده از آن توئیتهای خاصی را فیلتر کرد و نمایش داد.
حالا به APIهای وب میپردازیم و موارد استفادهی خاص آنها را عنوان میکنیم. توجه کنید که از Postman در مثالهایمان استفاده خواهیم کرد. اگرچه این Rest Client محدود به محیط وب است، اما میتوانید ابزارهای اینچنینی را برای محیطهای دیگر نیز پیدا کنید. بد نیست که قبل از شروع به کار، کمی دربارهی ابزارهای موجود در محیط موردنظرتان تحقیق کنید.
استفاده از یک Public API برای Fetch (واکشی) داده
مثال اول ساده، ولی جذاب است.
اولین APIای که از آن استفاده میکنیم، Dog API نامیده میشود. APIای جذاب که نیازی به احراز هویت ندارد. بهعلاوه، یک HTTP REST API و تحت وب است. چون این API مختص محیط وب است، لازم است که برخی پروتکلها را رعایت کنیم: در این مثال یعنی HTTP Verbها (GET, PUT, POST, DELETE, …). نمیخواهیم مثالی سخت داشته باشیم و فقط از متد GET استفاده میکنیم. بهعلاوه، این API تنها از همین متد پشتیبانی میکند. بیشتر Pubic APIها فقط به شما اجازهی استفاده از دادهها را میدهند و نمیگذارند چیزی بفرستید. به عبارت دیگر، فقط امکان استفاده از متد GET را دارید.
بیایید Postman را اجرا و واسط کاربریاش را ببینیم.
UI شکل بالا از تِم Dark استفاده میکند و شاید با UI شما کمی فرق داشته باشد.
چیزهای زیادی را باید در اینجا یاد بگیرید، پس اول با VERB و URL شروع میکنیم. متد (Verb) پیشفرض GET است، پس لازم نیست تغییری اعمال کنید. URL زیر را وارد کنید:
https://dog.ceo/api/breeds/list/all
“Send” را بزنید. باید پاسخی را دریافت کنید که دادههای مناسب را در خود دارد. اولین فراخوانی APIتان را انجام دادید. در این مثال از دادههای دریافتی استفادهای نمیکنیم. اما ایدهی کلی را متوجه شدید: میتوانید نژادهای مختلف سگ را به کاربرتان نشان و با کلیک روی نژاد، عکسی از آن را نیز نمایش دهید.