آموزش Restful API

Restful API چیست؟


REST API چیست؟

REST API (همچنین به عنوان RESTful API شناخته می شود) یک رابط برنامه نویسی کاربردی (API یا web API) است که با محدودیت های سبک معماری REST مطابقت دارد و امکان تعامل با سرویس های وب RESTful را فراهم می کند. REST مخففrepresentational state transfer  است و توسط دانشمند کامپیوتر روی فیلدینگ ایجاد شده است.

API چیست؟

API مجموعه ای از تعاریف و پروتکل ها برای ساخت و یکپارچه سازی نرم افزارهای کاربردی است. گاهی اوقات به عنوان قراردادی بین یک ارائه‌دهنده اطلاعات و یک کاربر اطلاعات نامیده می‌شود - که محتوای مورد نیاز مصرف‌کننده (تماس) و محتوای مورد نیاز تولیدکننده (پاسخ) را ایجاد می‌کند. به عنوان مثال، طراحی API برای یک سرویس آب و هوا می‌تواند مشخص کند که کاربر یک کد پستی ارائه می‌کند و تولیدکننده با یک پاسخ 2 قسمتی پاسخ می‌دهد، اولی دما بالا و دومی پایین است.

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

شما می توانید یک API را به عنوان یک واسطه بین کاربران یا مشتریان و منابع یا سرویس های وب که می خواهند دریافت کنند، در نظر بگیرید. همچنین راهی برای یک سازمان برای به اشتراک گذاشتن منابع و اطلاعات با حفظ امنیت، کنترل و احراز هویت - تعیین اینکه چه کسی به چه چیزی دسترسی دارد.

REST چیست؟

REST مجموعه ای از محدودیت های معماری است , نه یک پروتکل یا یک استاندارد. توسعه دهندگان API می توانند REST را به روش های مختلفی پیاده سازی کنند.

هنگامی که یک درخواست کلاینت از طریق یک Restful API انجام می شود، نمایشی از وضعیت منبع را به درخواست کننده یا نقطه پایانی منتقل می کند. این اطلاعات در یکی از چندین فرمت از طریق HTTP ارائه می‌شود: JSON ,HTML، XLT یا متن ساده. JSON عموماً محبوب‌ترین فرمت فایلی است که می‌توان از آن استفاده کرد، زیرا علی‌رغم نامش، زبانی آگنوستیک است و هم برای انسان و هم برای ماشین‌ها قابل خواندن است.

نکته دیگری که باید در نظر داشت این است که هدر ها و پارامتر ها در روش‌ های HTTP درخواست Restful API نیز مهم هستند، زیرا حاوی اطلاعات شناسه مهمی در مورد متادیتا های درخواست، مجوز، URI، کش، کوکی‌ ها و غیره است. هدر های درخواست و هدرهای پاسخ کدام اطلاعات اتصال HTTP و کدهای وضعیت خاص خود را دارند.