کارکردن با APIs (مفاهیم + کد)
در این مطلب قصد داریم در مورد کارکردن با APIs توضیح دهیم.
بنابراین اولین سؤالی که شما ممکن است بپرسید این است که API چیست؟
API مربوط به رابط برنامهنویسی برنامههای کاربردی است. به عبارت سادهتر، درواقع عملکردی است که میتواند برای کارکردن با سایر برنامههای کاربردی در اینترنت و برنامهای که از ( Backend + Frontend+ پایگاه داده) ساختهشده است، استفاده شود امیدوارم که شما با این موارد آشنا باشید.
بعضی از مثالهای API:
۱.لاگین شدن با api فیسبوک
۲. نقشههای API مربوط به Google
۳. جریان داده API مربوط به Twitter
۴. نوار پرداخت API
به من اعتماد کنید! هر سازمانِ فناوری اطلاعات این روزها یک مجموعه از API دارد.
اما چرا ما به API نیاز داریم؟
فرض کنید که شما میخواهید برنامهای را توسعه دهید که به کاربرانی نیاز دارید که باید با استفاده از حساب کاربریشان در Facebook به برنامه شما متصل شوند. مشکل در اینجا این است که شما دسترسی به کد Facebook یا پایگاه داده کاربران Facebook ندارید.
بنابراین شما باید یک درخواست به بخش عمومی Facebook Login API (به آدرس URL) ارسال کنید (منظور من بهصورت نوشتاری است) و Facebook درخواست شمارا چک کرده و جزئیات کاربری را در پایگاه داده خودشان تائید میکند و برای شما پاسخ (ok) یا (error) ارسال میکند و پسازآن کاربر برنامه میتواند به برنامه شما از طریق حساب Facebook خودش متصل شود.
بهطورکلی، این روش کار شرکتهاست. آنها یک برنامه کاربردی/نرمافزار API یا SDK ایجاد میکنند و سپس آن را بین کاربران/مشتریان خود توزیع میکنند.
هرکدام مزایا و معایب خودش را دارد که در پستهای آینده، بیشتر درباره آنها میگوییم.
بیایید نگاهی به بعضی از کدها بیندازیم:
در دو مورد شما نیاز دارید که از API داده بگیرید. بیایید ابتدا به آنها نگاهی بیندازیم:
۱.URL : شما یک درخواست از برنامه خودتان با استفاده از کد به این آدرس URL میفرستید.
۲. توابع ویژه: تقریباً در هر زبان برنامهنویسی، یک روش استاندارد برای ارسال درخواست به یک آدرس URL وجود دارد.
الف. در جاوااسکریپت این عملکرد بهصورت fetch() است.
ب. در پایتون بهصورت request() است.
ج. در اندروید بهصورت okhttp() یا retrofit است.
به یاد داشته باشید که این تابع ویژهای نیست بلکه تنها یک کتابخانه است که شما میتوانید از آن استفاده کنید (متن باز و کاملاً رایگان) درواقع یک دیگ بخاری از کد است. این تابع ویژه را در زبان برنامهنویسی خودتان چک کنید.
البته صحبت کردن ساده است! اما یک نوشتن یک کد باکیفیت ساده نیست. بیایید نگاهی به یک کد درحال اجرا بیندازیم:
برای این مثال ما از NASA open Data API استفاده میکنیم. API Key خودتان را از این لینک دریافت کنید و آن را با کد زیر جایگزین کنید.
نمونه کد جاوااسکریپت
خروجی :
نمونه کد پایتون
خروجی :
و تمام! این روش گرفتن داده از یک API با استفاده از متدهای fetch() و request() در جاوااسکریپت و پایتون است.
سخنپایانی
ما در این سایت نیز از یکسری apiهای گوگل، یاهو و گیتهاب برای راحتی شما به هنگام لاگین کردن استفاده کردهایم. همچنین این قول را به شما میدهیم که بزودی درباره دیگر زبانهای برنامهنویسی نیز مقالاتی به این شکل راجع به apiها قرار دهیم.