Restful چیست؟

فروردین 14, 1397     میثم عبداللهی    

Restful

سلام به شما کاربران عزیز و دوست داشتنی. امروز میخوام درباره یکی از خدمات وب بهتون بگم و اون چیزی نیست جز Restful.

وب سرویس Restful یا Rest مخفف عبارت Representational State Transfer به معنای روشی برای ایجاد، خوندن، آپدیت نمودن و یا حذف اطلاعات بر روی سروری است که از صدا زدن HTTP های ساده استفاده میکنن. از نگاه فناوری اطلاعات و بر اساس استاندارد های تعریف شده، وب سرویس Restful سرویس یا خدمتی است که از طریق وب توسط یک دستگاه الکترونیکی (سرور) به دستگاه الکترونیکی دیگر (سرویس گیرنده یا Client) ارائه میشه.

Restful چیست؟

Restful یک مدل طراحی برای برنامه های شبکه ایه که ارتباط بین دو سیستم سرویس دهنده و سرویس گیرنده رو توسط پروتکل هایی مثل FTP و HTTP و SMTP فراهم میکنه. در این وب سرویس از فناوری های وبی که به صورت پایه برای ارتباط انسان با سرور (Human To Machine) طراحی شده، برای ارتباط بین نرم افزار سرویس دهنده و نرم افزار سرویس گیرنده استفاده میشه. این وب سرویس از HTTP بیشتر برای انتقال اطلاعات و داده ها استفاده میکنه. این اطلاعات به صورت فایل و اغلب با استاندارد های متداول XML و JSON رد و بدل میشن.

محدودیت های معماری

شش محدویت اصلی برای هدایت یک سیستم Restful تعریف شده اند که نام اونها به صورت زیره:

1 – معماری Server و Client

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

2 – بی تفاوت بودن

ارتباطات بین سرویس گیرنده سرور با هیچ محیط مشتری در سرور بین درخواست ها ذخیره نمیشه. هر درخواست از هر مشتری حاوی تمام اطلاعات لازم برای سرویس درخواسته و وضعیت جلسه (شرایط برقراری ارتباط) در سرویس گیرنده نگهداری میشه. حالت جلسه رو سرور میتونه به سرویس دیگری مثل پایگاه داده برای حفظ یک وضعیت مداوم برای یک دوره منتقل کنه.

3 – کشش پذیری

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

Restful-عکس1

4 – سیستم لایه ای

با توجه با لایه ای بودن این سیستم یک مشتری نمیتونه به طور دقیق بگه که به طور مستقیم به سرور پایانی متصل شده یا با استفاده از واسطه های مختلفی که در طول مسیر وجود دارن به سرور پایانی وصل شده. سرور های واسطه ممکنه مقیاس پذیری سیستم رو از طریق ایجاد توازن بار و ارائه مخازن ذخیره سازی مشترک، بهبود ببخشن.

5 – کد تقاضا

سرور ها میتونن با انتقال کد اجرایی به طور موقت، قابلیت های مشتری رو گسترش بدن یا اونها رو سفارشی کنن.

6 – رابط یکنواخت

محدودیت های رابط یکنواخت برای طراحی هر سرویس Restful اساسیه و معماری سیستم رو ساده کرده و جدا میکنه که این کار هر بخش رو قادر میسازه به طور مستقل تکامل پیدا کنه و کامل بشه.

شروع یادگیری

این وب سرویس در کنار محدودیت های گفته شد دارای قابلیت های نیز هست که اگه دوست دارین در مورد اون ها اطلاعاتی داشته باشین و آموزش هایی بدست بیارین کافیه اینجا کلیک کنین و وارد سایت مربوطه بشین و لذت ببرین.

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

دسته‌بندی‌ : بلاگ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Rating*