+2 امتیاز
قبل در برنامه نویسی توسط (690 امتیاز)

من می خواهم برای توسعه وب سرویس از بین روش های RESTful و SOAP یکی را انتخاب کنم، اگر کسی درباره تفاوت ها، مزایا و معایب هر کدام از این دو روش اطلاعاتی داردلطفا به من کمک کند؟ همچنین می خواهم بدانم آیا این دو روش جایگزین یکدیگر می توانند استفاده شوند یا اینکه در بعضی موارد فقط یکی کاربرد دارد و آن یکی کاربرد ندارد؟

1 پاسخ

+10 امتیاز
قبل توسط (1.1هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ
SOAP REST
بخوبی برای محیط های محاسباتی توزیع شده کاربرد دارد. برای ارتباطات مدل نقطه به نقطه (point-to-point) طراحی شده است و برای محیط های توزیع شده قابل استفاده نیست.
پرتکل و middleware های زیادی برای راه اندازی ارتباط لازم است. برای راه اندازی ارتباط احتیاج به پرتکل یا middleware خاصی نیست و فقط پرتکل HTTP کفایت می کند.
محتوای پیغام ردوبدل شده مشخص کننده سرویس فراخوانی شده می باشد. بطور معمول URL در سرویس های REST بیانگر سرویس های سیستم می باشد.
کاملا قابل اطمینان است. قابل اطمینان نیست. برای مثال ممکن است یک دستور HTTP DELETE وضعیت OK برگرداند در حالی که عملیات حذف در سرور انجام نشده است.
حجم اطلاعات منتقل شده باید منطبق با SOAP schema باشد. محدودیتی در حجم اطلاعات منتقل شده وجود ندارد.
از استانداردهای فراوانی برای مباحث امنیت، قابلیت اعتماد و تراکنش ها پشتیبانی می کند. فقط از استاندارد های مشهور مانند HTTP, SSL پشتیبانی می کند.
هر دو پرتکل SMTP و HTTP بعنوان پرتکل لایه application قابل استفاده هستند. با مدل HTTP transport ارتباط تنگاتنگی دارد.
مکانیزم error handling ندارد. مکانیزم error handling بصورت توکار دارد.
پیچدگی بالا در پیاده سازی. سادگی در پیاده سازی.

در نهایت شایان ذکر است روش SOAP بیشتر برای پیاده سازی سرویس های میانی مورد استفاده قرار می گیرد و روش REST بیشتر در مواردی کاربرد دارد که نیازی به سرویس میانی وجود ندارد و اصطلاحا ارتباط point-to-point است.

قبل توسط (1.9هزار امتیاز)
+2
عالی بود و یک تفاوت کلی SOAP میشه گفت پرتکل است ولی REST یک ایده , یک فلسفه است
قبل توسط (1.1هزار امتیاز)
بله به نکته ظریفی اشاره کردید.

سوالات مشابه

+1 امتیاز
1 پاسخ 376 بازدید
0 امتیاز
1 پاسخ 407 بازدید
سوال شده 5 سال قبل در برنامه نویسی توسط یوری (426 امتیاز)
+1 امتیاز
1 پاسخ 549 بازدید
+1 امتیاز
1 پاسخ 412 بازدید
سوال شده 4 سال قبل در برنامه نویسی توسط Simpath (187 امتیاز)
+1 امتیاز
1 پاسخ 1.5هزار بازدید
+2 امتیاز
1 پاسخ 702 بازدید
0 امتیاز
1 پاسخ 2.2هزار بازدید
0 امتیاز
0 پاسخ 405 بازدید
0 امتیاز
0 پاسخ 305 بازدید
0 امتیاز
0 پاسخ 178 بازدید
...