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

HTTPWebRequest

فراخوانی وب سرویس ها با HTTPWebRequest شامل:
1-ایجاد instance درخواست برای URI خاص
2-تنظیم HTTP property های مختلف برای instance درخواست
3-بازیابی HttpWebResponse از درخواست
4-خواندن داده ها از پاسخ
به عنوان مثال، کد زیر را داده ها را از کتابخانه ملی ایالات متحده در خدمات وب پزشکی بازیابی می کند:

کد بالا یک HttpWebRequest که اطلاعات را با فرمت JSON بر می گرداند ایجاد می کند. اطلاعات برگشت داده شده یک HttpWebResponse هستند که از هر StreamReader می توانند برای خواندن اطلاعات دریافت شوند.

RestSharp

رویکرد دیگر برای استفاده از سروریس های REST استفاده از کتابخانه RestSharp است. RestSharp درخواست های HTTP را کپسوله می کند که شامل پشتیبانی از بازیابی نتایجی مانند محتوای رشته ای خام یا آبجکت C# دی سریالایز شده. به عنوان مثال، کد زیر را درخواستی به وب سرویس کتابخانه ملی ایالات متحده پزشکی ایجاد کرده و نتایج را به عنوان یک رشته در قالب JSON بازیابی می کند:

متد DeserializeRxTerm رشته خام JSON را از پراپرتی RestSharp.RestResponse.Content می گیرد و آن را به آبجکت C# کانورت می کند. اطلاعات دی سریالایز شده از وب سرویس هایی که بعدا در مورد آن ها گفته خواهد شد برگردانده می شوند.

NSUrlConnection

علاوه بر کلاس های موجود در کتابخانه کلاس پایه مونو (BCL)، مانند HttpWebRequest، و کتابخانه های C#، مانند RestSharp، کلاس های پلت فرم های خاص نیز برای استفاده در وب سرویس ها در دسترس هستند. برای مثال در iOS، کلاس های NSUrlConnection و NSMutableUrlRequest می توانند استفاده شوند. به عنوان مثال کد زیر چگونگی فراخوانی وب سرویس کتابخانه ملی پزشکی ایالات متحده را با استفاده از کلاس های iOS را نشان می دهد:

به طور کلی، کلاس های پلت فرم خاص برای استفاده در وب سرویس باید به سناریوهایی که در آن کد native به C# منتقل شده محدود می شوند. در صورت امکان، وب سرویسی که به کد دسترسی دارد باید قابل حمل باشد به طوری که می تواند cross-platform به اشتراک گذاشته شود.

پاسخ دهید

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

− 1 = 2