با سلام خدمت کاربران گرامی سایت پی وی لرن و علاقمندان و کاربرانی که علاقمند به یادگیری دوره XML هستند. در فصل گذشته با XSD و ویژگی ها و قابلیت های آن آشنا شدیم. در این جلسه که نخستین جلسه از سر فصل خدمات وب XML است به آموزش کار با خدمات وب XML می پردازیم.
خدمات وب جزء برنامه های وب است.
خدمات وب را می توان در وب منتشر کرد؛ پیدا نمود و مورد استفاده قرار داد.
در این جلسه به معرفی WSDL، SOAP، RDF و RSS می پردازیم:
WSDL به معنای زبان توصیف سرویس وب است
WSDL یک زبان مبتنی بر XML برای توصیف خدمات وب است.
WSDL یک W3C recommendation است.
SOAP مخفف Simple Object Access Protocol است
SOAP یک پروتکل مبتنی بر XML برای دسترسی به خدمات وب است.
SOAP بر اساس XML است.
SOAP یک W3C recommendation است.
RDF برای چارچوب توصیف منابع است.
RDF چارچوبی برای توصیف منابع در وب است.
RDF در XML نوشته شده است.
RDF یک W3C recommendation است.
RSS مخفف Really Simple Syndication است.
RSS اجازه می دهد تا محتوای سایت خود را پیوند دهید.
RSS یک راه آسان برای به اشتراک گذاری و مشاهده سرفصل ها و محتوا را تعریف می کند.
فایل های RSS را می توان به صورت خودکار به روز رسانی کرد
RSS اجازه می دهد تا نمایش های شخصی برای سایت های مختلف صورت بگیرد.
RSS در XML نوشته شده است.
پیش از شروع آموزش کار با خدمات وب XML بهتر است به یک سری نکات را بدانید!
قبل از مطالعه سرویس های وب باید درک اولیه ای از XML و XML Namespaces داشته باشید.
اگر تازه با XML آشنا شدید مشکلی نیست! دوره XML پی وی لرن به طور کامل به آموزش XML می پردازد و کافی است که جلسات این دوره را دنبال کنید تا به سطح فابل قبولی در آن برسید.
خدمات وب اجزای برنامه هستند.
سرویس های وب با استفاده از پروتکل های باز ارتباط برقرار می کنند.
خدمات وب مستقل و خود توصیف اند.
خدمات وب را می توان با استفاده از UDDI کشف کرد.
خدمات وب را می توان با برنامه های دیگر مورد استفاده قرار داد.
HTTP و XML پایه ای برای خدمات وب هستند.
هنگامی که تمام پلتفرم ها با استفاده از مرورگرهای وب به وب دسترسی داشته باشند، سیستم عامل های مختلف نمی توانند ارتباط برقرار کنند. برای این که سیستم عامل ها بتوانند با یکدیگر کار کنند ، برنامه های کاربردی وب توسعه یافته اند.
برنامه های کاربردی وب برنامه هایی هستند که در وب اجرا می شوند این برنامه ها بر اساس استانداردهای مرورگر ساخته شده اند و می توانند توسط هر مرورگر بر روی هر پلتفرم مورد استفاده قرار گیرند.
با استفاده از سرویس های وب، برنامه شما می تواند تابع یا پیام خود را به بقیه جهان منتشر کند.
با استفاده از XML برای رمزگذاری و رمزگشایی داده ها و SOAP برای حمل آن (با استفاده از پروتکل های باز) می توان از خدمات وب استفاده کرد.
با استفاده از سرویس های وب، سیستم پرداخت صورت حساب سرور Win 2k شما می تواند با سرور یونیکس تامین کننده IT شما ارتباط برقرار کند.
برنامه های کاربردی قابل استفاده مجددند.
برنامه های کاربردی اغلب برای ساخت به موارد ریز و درشتی احتیاج دارند اما چرا باید این موارد را بارها و بارها تکرار کرد در حالی که خدمت وب از دوباره کاری های پیوسته جلوگیری می کند.
خدمات وب می تواند اجزای برنامه مانند: تبدیل ارز، گزارش آب و هوا، و یا حتی ترجمه زبان را به عنوان خدمات ارائه دهد.
در ادامه و به عنوان آخرین مطلب در آموزش کار با خدمات وب XML به نحوه اتصال نرم افزارها می پردازیم.
با استفاده از خدمات وب شما می توانید داده ها را بین برنامه های مختلف و سیستم عامل های مختلف مبادله کنید و هر برنامه می تواند جزء خدمات وب باشد.
خدمات وب را می توان بدون توجه به زبان برنامه نویسی ایجاد کرد.
در مثال زیر می توانید کاربرد ASP.NET را در برای ایجاد سرویس وب ساده ای که دما را از فارنهایت به سانتیگراد تبدیل می کند و برعکس؛ ببینید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <%@ WebService Language="VBScript" Class="TempConvert" %> Imports System Imports System.Web.Services Public Class TempConvert :Inherits WebService <WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String dim fahr fahr=trim(replace(Fahrenheit,",",".")) if fahr="" or IsNumeric(fahr)=false then return "Error" return ((((fahr) - 32) / 9) * 5) end function <WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String dim cel cel=trim(replace(Celsius,",",".")) if cel="" or IsNumeric(cel)=false then return "Error" return ((((cel) * 9) / 5) + 32) end function end class |
این سند به عنوان فایل .asmx ذخیره می شود. این افزونه فایل ASP.NET برای خدمات وب XML است.
نکته: برای اجرای این مثال، به یک سرور دات نت نیاز دارید.
خط اول در مثال بیان می کند که این یک سرویس وب است که در VBScript نوشته شده و دارای نام کلاس “TempConvert” است:
1 | <%@ WebService Language="VBScript" Class="TempConvert" %> |
خطوط بعدی فضای نام “System.Web.Services” را از .NET framework وارد می کند:
1 2 | Imports System Imports System.Web.Services |
خط بعدی تعریف می کند که کلاس “TempConvert” نوع کلاس WebService است:
1 | Public Class TempConvert :Inherits WebService |
گام های بعدی برنامه نویسی VB است. این برنامه دارای دو تابه است. یکی برای تبدیل از فارنهایت به سلسیوس، و دیگری برای تبدیل از سلسیوس به فارنهایت.
تنها تفاوت آن با یک نرم افزار معمول این است که این تابع به عنوان “()WebMethod ” تعریف شده است.
از “()WebMethod ” برای تبدیل توابع در برنامه خود به سرویس های وب استفاده کنید:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <WebMethod()> Public Function FahrenheitToCelsius(ByVal Fahrenheit As String) As String dim fahr fahr=trim(replace(Fahrenheit,",",".")) if fahr="" or IsNumeric(fahr)=false then return "Error" return ((((fahr) - 32) / 9) * 5) end function <WebMethod()> Public Function CelsiusToFahrenheit(ByVal Celsius As String) As String dim cel cel=trim(replace(Celsius,",",".")) if cel="" or IsNumeric(cel)=false then return "Error" return ((((cel) * 9) / 5) + 32) end function |
سپس، کلاس را پایان دهید:
1 | end class |
فایل .asmx را در یک سرور با پشتیبانی .NET منتشر کنید و حالا اولین سرویس وب خود را دارید!
در اینجا کد برای اضافه کردن سرویس وب به یک صفحه وب آورده شده است:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <form action='tempconvert.asmx/FahrenheitToCelsius' method="post" target="_blank"> <table> <tr> <td>Fahrenheit to Celsius:</td> <td> <input class="frmInput" type="text" size="30" name="Fahrenheit"> </td> </tr> <tr> <td></td> <td align="right"> <input type="submit" value="Submit" class="button"> </td> </tr> </table> </form> <form action='tempconvert.asmx/CelsiusToFahrenheit' method="post" target="_blank"> <table> <tr> <td>Celsius to Fahrenheit:</td> <td> <input class="frmInput" type="text" size="30" name="Celsius"> </td> </tr> <tr> <td></td> <td align="right"> <input type="submit" value="Submit" class="button"> </td> </tr> </table> </form> |
“tempconvert.asmx” را با آدرس سرویس وب خود تعویض کنید مانند:
http://www.example.com/xml/tempconvert.asmx
در این جلسه به صورت مفصل به آموزش کار با خدمات وب XML و آموختیم که خدمات وب جزء برنامه های وب است و می توان خدمات وب را در وب منتشر کرد؛ پیدا نمود و مورد استفاده قرار داد در ادامه جلسه نیز به معرفی WSDL، SOAP، RDF و RSS پرداختیم و تک تک این خدمات را بررسی کردیم.
به طور خلاصه می توان گفت:
خدمات وب اجزای برنامه هستند.
سرویس های وب با استفاده از پروتکل های باز ارتباط برقرار می کنند.
خدمات وب مستقل و خود توصیف اند.
خدمات وب را می توان با استفاده از UDDI کشف کرد.
خدمات وب را می توان با برنامه های دیگر مورد استفاده قرار داد.
HTTP و XML پایه ای برای خدمات وب هستند.
در جلسه بعدی به آموزش WSDL خواهیم پرداخت.
با پی وی لرن همراه باشید.