کاربرد Endpointها در استفاده api
در این مطلب میخواهیم در مورد نقش Endpointها در API توضیح دهیم
به زبان ساده، API واسطی برایتان فراهم میکند تا از منطق آن استفاده کنید. برای استفاده از آن نیز لازم نیست که جزئیاتِ چگونه عمل کردن این منطق را بدانید. تا زمانی که در سطحِ برنامهنویسیِ (نه گرافیکی) چیزی هستید، میتوانید از این تعریف برای هر زبان، پروتکل یا محیطی استفاده کنید.
برای اینکه بهتر APIها را متوجه شوید، مواردی را، که API نیستند، در زیر برایتان لیست میکنیم:
- یک API لزوماً یک دستگاه خارجی نیست. مثلاً، میتوانید مستقیما از کتابخانهها در برنامهتان استفاده کنید یا از APIها برای دسترسی به آنها کمک بگیرید.
- API فقط یک واسط است. یک API دارای تعریفات/فرمت و پیادهسازی است.
- API یک GUI (واسط گرافیکی کاربر) نیست. API تعاملاتی در سطح گرافیکی ندارد. APIها، چه با استفاده از یک زبان یا پروتکل ارتباطی، تنها در لایهی برنامهنویسی عمل میکند.
- API یک وبهوک (Webhook) نیست.
همهی APIها به صورت مشابه ساخته نشدهاند.
با اینکه هدف همهی APIها یکی است، اما روشهای رسیدن به این اهداف در APIهای مختلف متفاوت است. چون میخواهیم تنها معرفی سادهای از APIها داشته باشیم، وارد جزئیات نمیشویم. فقط به خاطر داشته باشید که APIها با رویکردهایِ مختلفی ساخته میشوند.
Endpointها
هدف APIها این است که کار شما را در برنامهنویسی آسانتر کنند. اما یک API چگونه این کار را انجام میدهد؟
یک API قابلیتها/توابع را در کنار هم قرار میدهد و شما میتوانید با استفاده از Endpointها به آنها دسترسی پیدا کنید (معمولاً URLهایی ارائه میشوند، که برای ارتباط با API باید از آنها استفاده کنید).
این Endpointها تنها روش ارتباط با یک API هستند. هر Endpoint برای درخواست و پاسخ فرمتهای مشخصی دارد، که میتوانید آنها را در اسناد مربوط به API پیدا کنید.
Endpointها میتوانند دارای توابعی ساده باشند یا توابعی پیچیده داشته باشند که APIهای دیگری را فراخوانی میکنند. نقطهی کلیدی در اینجا این است که منطق پایهی این توابع از دید شما پنهان است. برای استفاده از آنها لازم نیست چیزی از چگونگی عملکرد آنها بدانید. برای Consume کردن، یا به عبارتی استفاده از قسمتهای مختلف آنها در اپلیکیشنتان، فقط کافی است که فرمت مناسب آنها را بلد باشید.
خلاصه اینکه، یک API شبیه واسطهای دیگر است: مثل کلید برق، که لامپ را روشن میکند. اینکه شما اطلاعاتی دربارهی جریان برق داشته باشید یا خیر، فرقی در کلیت موضوع ندارد.