در این مطلب در مورد کد فراخوانی Soap service در #C توضیح خواهیم داد.
مقدمه
پروتکل SOAP یک پروتکل زیرساختی برای رد و بدل کردن اطلاعات برای پیادهسازی خدمات تحت وب در شبکههای رایانهای است. این پروتکل در حال حاضر توسط زیرگروهی از W3C اداره میشود و در سال ۲۰۰۳ به عنوان یکی از توصیههای W3C ثبت شد.
هدف SOAP ایجاد استانداردی برای انتقال پیامها در یک محیط توزیع شده و مستقل از بستر برنامهنویسی است. هدف دیگر SOAP و پروتکلهای مرتبط با آن مانند WSDL، سادهسازی کار برنامهنویسان با جلوگیری از دوباره کاری در طراحی پروتکلها بوده است.
ویژگیهای فنی SOAP
این پروتکل مبتنی بر XML است و معمولاً بر بستر پروتکلهای لایهی کاربرد پیادهسازی میشوند که متداولترین آنها HTTP
( Hypertext Transfer Protocol ) و ( SMTP ( Simple Mail Transfer Protocol هستند
به عنوان نمونهای از رویهای که میتواند با مکانیزمهای SOAP انجام شود، یک سامانهی منابع انسانی را در نظر بگیرید که اطلاعات همهی کارمندان در آن قرار دارد. با دادن پارامترهای جستجو و اجرای یکی از سرویسهای SOAP سامانه، میتوان اطلاعات کارمندان شامل نام، شماره شناسنامه، اطلاعات دستمزد و … را در قالب XML دریافت کرد. بستههای پرتکل SOAP از چند بخش تشکیل شده اند:
- یک بسته که تعریف میکند پیام چیست و چگونه باید آن را پردازش کرد
- مجموعهای از قواعد Encoding برای بازنمایی دادههای در سطح نرمافزارهای کاربردی
- توافقی برای بازنمایی صدا شدن توابع و پاسخ آنها
پروتکل SOAP سه ویژگی بارز دارد:
- توسعهپذیری: این پروتکل بخشهایی دارد که قابلیت توسعه و ارتقا است، مثلاً بخشهای امنیت و WS-routing که جزو الحاقیههایی هست که در حال تغییر است.
- خنثی بودن: SOAP میتواند بر بستر هر پرتکل انتقالی مانند HTTP، SMTP، TCP، UDP و JMS
- استقلال: SOAP مدل برنامهنویسی را محدود نمیکند