مقاله خود را جستجو کنید

در این بخش میتوانید مقاله خود به صورت حرفه ای جستجو نماید.

تعریف وب سرویس به زبان ساده

 تاریخ انتشار : 13 آوریل 2014    دسته بندی : پی اچ پی
وقتی اینترنت همه گیر شد و استفاده از آن سرعت گرفت، همیشه این سئوال بود که دو کامپیوتر که از هم دور هستند چگونه می توانند بدون دخالت یک انسان با هم ارتباط برقرار کنند. منظور از ارتباط این است که یک برنامه در یک کامپیوتر بتواند تابعی که در یک برنامه دیگر که در یک کامپیوتر دور از خودش قرار دارد را صدا بزند و نتیجه اش را دریافت کند. به هر حال شرکت های نرم افزاری دست به کار شدند تا پاسخی برای این مشکل پیدا کنند. شرکت مایکروسافت در این زمینه هم پیشرو بود و تکنولوژی DCOM را برای رفع این نیاز تولید کرد. نسل بعدی راه حل این مشکل، که هم اکنون به صورت گسترده ای در اینترنت مورد استفاده قرار می گیرد، وب سرویس ها هستند. وب سرویس ها، برنامه های تحت دسکتاپ و تحت وب را قادر می سازند که با یک ارتباط روی HTTP به توابع داخل آن ها دسترسی پیدا کنند و نتیجه اش را در قالب فرمت استاندارد XML دریافت کنند. وب سرویس ها به زبان برنامه نویسی، پلت فرم و پروتکل خاصی وابستگی ندارند. یعنی شما می توانید با هر زبان برنامه نویسی روی هر پلت فرمی از وب سرویس ها استفاده کنید. یک وب سرویس نتیجه پردازش هایش را در قالب فرمت XML به برنامه در خواست کننده بوسیله HTTP می فرستد. فرمت XML، راهی استاندارد برای ارتباط دو سیستم ناسازگار است. علت اینکه پیغام های وب سرویس ها با استفاده از HTTP ارسال می شود این است که به راحتی و بدون اینکه توسط فایروال ها بلاک شوند، به دست برنامه درخواست کننده روی اینترنت برسد. از مثال های وب سرویس های ساده ای که امروز استفاده می شود، می توان به سرویس گزارش وضع هوا، سرویس اخبار، سرویس تبدیل واحدهای پولی، سرویس شناسایی کشور از روی IP و … اشاره نمود.

aa480534-wssf_landingpage_f01en-usmsdn-10

اصطلاحات معمولی که با وب سرویس بکار می روند :

  • SOAP مخفف Simple Object Access Protocol و قراردادی است که نحوه صدا زدن متدهای یک وب سرویس و اینکه چطور پیغام ها قالب بندی می شوند، و چطور با HTTP فرستاده می شوند را مشخص می کند. SOAP همچنین نمایش استانداردی برای پیغام های خطا ارائه می کند.
  • WSDL مخفف Web Service Description Lanuage و استانداردی است که به کلاینت می گوید چه ورودی هایی این وب سرویس قبول می کند و پس از پردازش آن چه خروجی هایی به آن برخواهد گرداند. WSDL شامل همه جزئیاتی است که برای استفاده از آن وب سرویس نیاز است. متدها و خصوصیاتی که وب سرویس فراهم می کند، URL متدهایی که کلاینت می تواند به آن ها دسترسی داشته باشد، انواع داده ای مورد استفاده وب سرویس و پروتکل ارتباطی که مورد استفاده وب سرویس قرار می گیرد، اطلاعاتی هستند که WSDL به کلاینت ارائه می کند.
  • REST مخفف Representational State Transfer که توابع استاندارد پروتکل HTTP مثل GET, POST را به کلاینت ارائه می کند. به طور مثال API وب سایت توییتر در واقع وب سرویسی است که به کلاینت های مختلف اجازه فرستادن آپدیت ها و یا گرفتن تایم لاین های مختلف را می دهد.
  • SOA مخفف Service-oriented Architecture و مفهومی است که وب سرویس ها قادر به پیاده سازی آن ها می باشند. معماری مبتنی بر سرویس یکی از مفاهیم جدیدی است که شرکت های بزرگ نرم افزاری سرمایه گذاری های زیادی روی آن انجام داده اند.

وب سرویس ها در پلت فرم های نرم افزاری معروف مثل دات نت و جاوا از جایگاه ویژوه ای برخوردارند. به طور مثال برای ایجاد یک وب سرویس با استفاده از پلت فرم دات نت و ویژوال استادیو قدم های زیر را دنبال کنید : از منوی File و زیر منوی New گزینه WebSite را برگزینید. در پنجره باز شده ASP.NET Web Service را انتخاب کنید. در پنجره Solution Explorer فایل Service.asmx را به نام مناسب تغییر دهید. برای مثال من متدی برای تبدیل تاریخ میلادی به تاریخ شمسی به وب سرویسم اضافه می کنم.

[WebMethod(Description="Convert a greogorian date to persian date")] public DateTime ToPersianDate(DateTime gdate) { return BLL.ToPersianDate(gdate); }

البته در این مثال مهم نیست که چطور این متد تاریخ میلادی را به شمسی تبدیل می کند، مهم نحوه اضافه کردن یک متد به یک وب سرویس است.

یک پاسخ به “تعریف وب سرویس به زبان ساده”

  1. پوریا کرمانشاهیان گفت:

    سلام آقای مجیدی عزیز خسته نباشید.من مقاله جالبتون در مورد وب سرویس مطالعه کردم.راستش چند وقتی هست که به این مباحث علاقه مند شدم چون به نظرم میشه برای افزایش درامد روی تجارت اینترنتی و شغل دوم حساب کرد.منم بعد از کمی جستجو تصمیم گرفتم برای خودم یه وبسایت فروش بلیط هواپیما داشته باشم و تونستم یک وب سرویس تهیه کنم تا اون رو در یک وب سایت قرار بدم.چون با مباحث طراحی وبسایت آشنا نبودم سعی کردم تا html css یاد بگیرم ولی الان تصمیم گرفتم که وردپرس یاد بگیرم چون فکر میکنم برای آدم مبتدی مثل من هم سریعتر و راحتتر هست.ولی نمیدونم به نظرتون برای من مبتدی بیش از ۲-۳ ماه طول میکشه تا به سطحی برسم که بتونم وب سرویس رو در وردپرس پیاده سازی کنم؟خوشحال میشم تا بتونم از کمکهای شما استفاده کنم چون با دیدن کارهاتون شما رو آدم موفقی در این زمینه میدونم.نمیدونم اگر سوال یا اشکالی در این زمینه داشتم میتونم مزاحمتون بشم یا نه؟ببخشید که طولانی شد.امیدوارم همیشه موفق باشید.

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

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