0
۵ (۱۰۰%) ۲ votes

امروزه تقریبا همه ما بدون اینکه متوجه شویم از صد ها یا هزاران API استفاده می کنیم. API ها امروزه بسیار گسترده شده اند. API ها باعث شده اند تا برنامه های کاربردی کامپیوتر ها و موبایل های هوشمند با سرعت سرسام آوری توسعه یابند و بتوانند هر روز خدمات بیشتری را به شما ارائه کنند. اما API چیست و چه کاربردی دارد؟ چرا API ها در زندگی ما ا این حد مهم شده اند؟ در ادامه این مطلب API یا Application Programming Interface و کاربرد های آن را برای شما توضیح خواهیم داد.

api چیست

API چیست ( API به زبان ساده )

با گشت و گذار در سایت هایی مانند ویکی پدیا متوجه می شویم تعاریفی که از API ارائه شده است به زبان فنی و پیچیده نوشته شده است. در اینجا قصد دارم API را به زبان ساده و با استفاده از مثال توضیح دهم. اگر تا به امروز از سایت هایی مانند علی بابا بلیت هواپیما خریداری نموده باشید متوجه شده اید که این سایت ها برای نمایش بلیت هواپیما، بلیت قطار و بلیت اتوبوس مدتی زمان نیاز دارند تا به درخواست شما پاسخ دهند و بلیت ها را از ایرلاین ها، آژانس ها و تعاونی های مختلف جستجو نمایند. در حقیقت زمانی که شما از سایت علی بابا برای جستجوی بلیت استفاده می کنید، سایت علی بابا به دهها API مختلف متصل می شود تا بلیت های موجود در تاریخ مورد نظر شما برای مبدا و مقصد مورد نظر شما پیدا کند.

موتور های جستجوی بلیت همگی به API آژانس ها، ایرلاین ها و تعاونی ها متصل می شوند تا اطلاعات را دریافت کنند. API در واقع یک رابط یا Interface برای دسترسی سایر برنامه ها به منابع و اطلاعات یک برنامه یا یک بانک اطلاعاتی به صورت کنترل شده است. در واقع API یک راه ایمن است که توسط یک فرد یا شرکت ایجاد می شود تا بقیه افراد و شرکت ها بتوانند به صورت کنترل شده از اطلاعات و منابع آن شرکت استفاده کنند.

این مطلب را از دست ندهید:  گران ترین مایعات جهان

API چیست

به عنوان مثال فرض کنید ۲۰ تعاونی اتوبوس رانی در تهران فعالیت می کنند. اگر شما بخواهید یک سایت یا یک اپلیکیشن جستجوی بلیت راه اندازی کنید باید اطلاعات بلیت های همه ی این ۲۰ تعاونی را در اختیار داشته باشید. برای این کار ۲ راه وجود دارد، یک راه این است که شما پایگاه داده مستقلی برای خودتان داشته باشید و اطلاعات تک تک بلیت های این ۲۰ تعاونی را به صورت منظم بروز رسانی کنید. اگر ۱۰ سایت مانند سایت شما وجود داشته باشد ترافیک بسیار بالایی بر روی سرور این تعاونی ها ایجاد می شود زیرا باید هر دقیقه کل دیتابیس این تعاونی ها را دریافت و دیتابیستان را بروز رسانی کنید. در نهایت ممکن است یک بلیت به صورت همزمان فروخته شود یا اینکه دیتابیس شما با دیتابیس سایر سایت ها همگام نباشد.

اینجاست که API ها به کمک می آیند. شما می توانید با استفاده از API هایی که تعاونی ها در اختیار اپلیکیشن ها قرار می دهند به صورت کنترل شده به اطلاعات تعاونی ها دسترسی پیدا کنید. زمانی که کاربری در سایت یا اپلیکیشن شما بلیتی را جستجو می کند شما تاریخ و مسیر را از طریق API به همه تعاونی ها ارسال می کنید و API تعاونی بلیت های موجود را به شما نمایش می دهد. زمانی که مسافری قصد خرید بلیت را دارد شما درخواست رزرو را به تعاونی مورد نظر ارسال می کنید و تعاونی به مدت مشخصی بلیت را برای مشتری شما رزرو نگه می دارد و هیچ کس از هیچ سایت یا اپلیکیشن دیگری نمی تواند این بلیت را خریداری نماید. زمانی که مشتری شما هزینه بلیت را پرداخت کرد شما درخواست قطعی شدن بلیت را به تعاونی ارسال می کنید و اگر مشتری درخواست را لغو کرد، شما لغو شدن رزرو را اعلام می کنید.

این مطلب را از دست ندهید:  باتری گوشی موبایل رو بیشتر از 80% شارژ نکنید

 

به زبان کمی فنی تر API ها رابط هایی نرم افزاری برای ایحاد و مدیریت ارتباط بین نرم افزار ها و منابع نرم افزاری مختلف هستند.

API به زبان ساده

API شبیه گارسون رستوران است!

برای اینکه ساده تر متوجه شوید API چیست از این تشبیه استفاده می کنیم. API مانند یک گارسون رستوران است. گارسون یک منو را در اختیار شما قرار می دهد که شما می توانید از بین آیتم های منو یک یا چند آیتم را به گارسون اعلام کنید. گارسون سفارش شما را دریافت می کند و به آشپزخانه می برد و بعد از اینکه درخواست شما آماده شد، غذای مورد نظر شما را از آشپزخانه تحویل می گیرد و برای شما بر سر میز می آورد. API هم دقیقا چنین کاری انجام می دهد. یک API شامل دستورالعمل ها و متد های خاصی است که شما می توانید در قابل آن دستورالعمل ها درخواست هایی را ارسال کنید. دستورالعمل مانند منو است و Method نامیده می شود. درخواست شما مانند سفارش مشتری در رستوران است و Request نامیده می شود. و در نهایت اگر درخواست شما معتبر باشد آشپزخانه که همان سرور API است ( Server ) درخواست شما را انجام می دهد و پاسخ مورد نظر شما را که Response نامیده می شود برای شما ارسال می کند.

 

یک مثال کاربردی از API ارسال SMS

فرض کنید شما می خواهید زمانی که یک کاربر بر روی سایت شما ثبت نام کرد برای او یک SMS خوش آمد ارسال کنید. برای ارسال SMS شما می توانید دستگاه ها و تجهیزات ارسال SMS را خریداری کنید و به سرور سایتتان متصل کنید و مستقیما پیامک ها را ارسال کنید یا اینکه از API ارسال پیامک یک شرکت دیگر استفاده کنید. زمانی که شما از API یک شرکت دیگر استفاده می کنید، آن شرکت تجهیزات ارسال پیامک را به سرور خود متصل نموده است و شما می توانید از طریق API به نرم افزاری که این شرکت برای مدیریت این تجهیزات طراحی کرده است دسترسی پیدا کنید.

این مطلب را از دست ندهید:  OTG چیست؟

شما اعتبار حسابتان را نزد آن شرکت شارژ می کنید و هر زمان به ارسال پیامک نیاز داشتید می توانید درخواست خود را از طریق API برای این شرکت ارسال کنید. معمولا این شرکت ها اطلاعاتی مانند اطلاعات زیر را از شما درخواست می کنند:

  • نام کاربری
  • رمز عبور یا توکن دسترسی به API
  • شماره تلفن دریافت کننده
  • متن پیام

شما این اطلاعات را از طریق API ارسال می کنید و اگر اطلاعات شما درست باشد سرور شرکت یک کد رهگیری در پاسخ به شما بر میگرداند و اگر اشتباهی در اطلاعات شما وجود داشته باشد مثلا رمز نادرست باشد یا شماره تلفن همراه به درستی وارد نشده باشد ارور مربوطه را به شما بر میگرداند.

کار شما همین جا به اتمام می رسد اما کار آن شرکت تازه شروع می شود! اس ام اس شما در لیست یا Queue ارسال قرار می گیرد. زمانی که نوبت به ارسال اس ام اس شما شد، پیامک شما از طریق مودم سیم کارتی یا سرور مخابرات ارسال می شود. وضعیت پیامک شم به طور مرتب بروز می شود تا پیامک به دریافت کننده تحویل داده شود. اگر خطایی در زمان ارسال رخ داده باشد مجددا پیامک وارد Queue می شود. همه این اتفاقات در سرور شرکت ارسال پیامک رخ می دهد اما شما فقط یک کد رهگیری در اختیار دارید که هر زمان می توانید از طریق API وضعیت آن را بررسی کنید.

 

امروزه صد ها هزار API مختلف توسط برنامه نویسان برای استفاده در اپلیکیشن های Android, iOS و برنامه های تحت وب مورد استفاده قرار می گیرد. سایت Mashape یکی از سایت های قدیمی در ارائه انواع API های بین المللی به شمار می رفت که در حال حاضر فعالیت این سایت توسط سایت هایی مانند RapidAPI ادامه پیدا نموده است.

 

 

 

 

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.