Veb-xizmatlar murakkab ma'lumotlar turlaridan kirish yoki chiqish parametrlari sifatida foydalanishni qo'llab-quvvatlaydi . Murakkab ma'lumotlar turlari qo'llab-quvvatlanadi, chunki XML ko'pgina ma'lumotlar turlarini ketma-ketlashtirishni osonlashtiradi. Biroq, veb-xizmatni avtomatik ravishda sinab ko'rishda, ASP .NET murakkab ma'lumotlar turlarini qabul qiladigan usullar uchun test sahifalarini yaratmaydi. Buning sababi, HTTP GET va POST yordamida murakkab ma'lumotlar turlarini veb usuliga o'tkaza olmaysiz.
Veb-xizmatlari asenkron usulda qo'ng'iroq qilish imkonini beradi . Asinxron qo'ng'iroq, qo'ng'iroqni qayta ishlash uchun veb-xizmat qancha vaqt ketishidan qat'i nazar, darhol qaytadi. Asinxron qo'ng'iroqlar qo'ng'iroqni qayta ishlash uchun uzoq vaqt talab qilganda foydalidir. Ilova qo'ng'iroqni amalga oshiradi, keyin qo'ng'iroq natijasini kutmasdan ishlashni davom ettiradi va keyinchalik asinxron qo'ng'iroq natijalarini oladi. Natija veb-usuli ilova uchun qulay vaqtda qayta chaqirilganda yoki veb-xizmat (delegatlar mexanizmi) tomonidan qo'ng'iroqni qayta ishlash tugashi haqidagi bildirishnomaga obuna bo'lganda olinadi.
Veb-xizmatlar Microsoft Visual Studio 2005 kabi vositalar yordamida yaratilishi mumkin . Veb-xizmatlarni yaratish uchun alohida ASP .NET Web Service loyiha turi mavjud. Visual Studio asmx faylini, veb-xizmat sinflarini tavsiflash uchun fon kodiga ega faylni, veb-xizmat konfiguratsiya faylini va hokazolarni yaratadi. Loyihani amalga oshirish uchun ishga tushirilganda, xizmat sinflari kompilyatsiya qilinadi va asmx fayli brauzer oynasida ochiladi.
Shartnomalardan foydalangan holda veb-xizmatlarni tavsiflash Boshqa ishlab chiquvchilar AdditionService-dan foydalanishlari uchun ular qanday usullarni ko'rsatishini, qanday protokollarni qo'llab-quvvatlashini, usul imzolarini va veb-xizmat manzilini (URL) bilishlari kerak. Bularning barchasi va boshqa ma'lumotlar WSDL (Web Service Description tili) da tasvirlanishi mumkin.
WSDL - IBM, Microsoft va boshqalar tomonidan taklif qilingan XML tili ( til standarti tavsifi uchun http://www.w3.org/TR/wsdl ga qarang ). WSDL odatda turli ishlab chiqish vositalari tomonidan avtomatik ravishda yaratiladi va tahlil qilinadi, shuning uchun ishlab chiquvchilar XMLni o'zlari o'qishlari shart emas. Asboblar XML-ni tahlil qiladi va uning asosida veb-xizmat usullariga o'xshash usullarni o'z ichiga olgan o'rash sinfini yaratadi. Mijoz ilovasi o'rash sinfidagi usullarni chaqiradi. O'rash sinfi veb-xizmatga so'rovlar yuboradi, natijani oladi va mijozga qaytaradi.
Ya'ni, veb-xizmatni nashr qilishda biz uni tavsiflovchi shartnomani ham nashr etishimiz kerak. .NET Framework yordamida yaratilgan veb-xizmat shartnomasini olish uchun brauzerning manzil satriga veb-xizmat URL-manzilini kiriting va ?wsdl so'rovlar qatorini qo'shing. AdditionService shartnomasi quyidagicha ko'rinadi:
Veb-xizmat kashfiyoti
Boshqa ishlab chiquvchilar AdditionService mavjudligi haqida qayerdan bilishadi?
Birinchidan, DISCO (kashf qilish so'zining qisqartmasi) yordamida - mahalliy veb-xizmatlarni qidirish uchun fayl mexanizmi, ya'ni veb-serverlarda joylashgan DISCO fayllardan mavjud veb-xizmatlar ro'yxatini olish mexanizmi. Bundan tashqari, DISCO fayllari mavjud xizmatlarning WSDL shartnomalarining joylashuvi haqidagi yozuvlarni o'z ichiga oladi. DISCO fayli yozuvlarga ega XML fayldir.
Bundan tashqari, DISCO fayllariga o'xshash VSDISCO fayllaridan foydalanish mumkin, ammo ularning mazmuni ko'rsatilgan kataloglarda va barcha ichki ichki kataloglarda veb-xizmatlarni dinamik qidirish natijasidir. ASP .NET .vsdisco fayl nomi kengaytmasini berilgan katalog va uning pastki kataloglarini asmx va diskoteka uchun qidiradigan va dinamik ravishda yaratilgan DISCO hujjatini qaytaradigan HTTP ishlov beruvchiga moslashtiradi. Xavfsizlik nuqtai nazaridan dinamik qidiruv .NET Frameworkning baʼzi versiyalarida oʻchirib qoʻyilgan, lekin siz uni Machine.config faylidagi yozuvlarni tahrirlash orqali yoqishingiz mumkin.
Ammo global tarmoqda veb-xizmatlarni qidirish qanday? Global tarmoqda veb-xizmatlarni qidirish uchun Microsoft, IBM va Ariba birgalikda UDDI (Universal Description Discovery and Integration) - veb-xizmatlarni topish imkonini beruvchi taqsimlangan ma'lumotlar bazalarini yaratish spetsifikatsiyasini ishlab chiqdi. UDDI yuzlab kompaniyalar tomonidan qo'llab-quvvatlanadi. UDDI saytlarining o'zi veb-xizmatlardir. Har kim o'z reestrini UDDI asosida nashr qilishi mumkin. Ko'pgina ishlab chiquvchilar hech qachon UDDI API dan to'g'ridan-to'g'ri foydalanmaydi. Buning o'rniga, UDDI registrlariga ishlab chiqish vositalari orqali kirish mumkin. Shuningdek, ular topilgan va tanlangan veb-xizmatlar uchun o'rash sinflarini yaratadilar.
Natijalar XML Veb- xizmat - bu turli xil standartlarni qo'llab-quvvatlaydigan tizimlar tomonidan ishlatilishi mumkin bo'lgan funksionallikni ta'minlovchi dasturiy komponent.XML vaHTTP mijozlariveb- xizmatlar ham mahalliy, ham masofaviy ilovalar bo'lishi mumkin.Veb- xizmatlar oddiy, umumiy qabul qilingan standartlar asosida turli tizimlarni birlashtirishni osonlashtiradigan tuzilmalarni yaratishga imkon beradi.
35-Mavzu
Veb-xizmatlar
Oxirgi yangilangan sana : 2023-02-13
Veb-xizmatlar tarmoq orqali tavsiflash, nashr etish, joylashishni aniqlash va qo'ng'iroq qilish mumkin bo'lgan mustaqil, modulli ilovalardir.
Ilova serveri Java™ Platformasi, Enterprise Edition (Java EE) spetsifikatsiyasi uchun veb-xizmatlari asosida ishlab chiqilgan va joriy qilingan veb-xizmatlarni qo'llab-quvvatlaydi. Ilova serveri XML Web Services (JAX-WS) dasturlash modeli uchun Java API va XML-ga asoslangan RPC (JAX-RPC) dasturlash modeli uchun Java API-ni qo'llab-quvvatlaydi. JAX-WS strategik dasturlash modeli boʻlib, veb-xizmat dasturlari va mijozlarini ishlab chiqish uchun standart, izohga asoslangan modelni qoʻllab-quvvatlash orqali ilovalarni ishlab chiqishni soddalashtiradi.
Oddiy veb-xizmatlar stsenariysi boshqa mavjud ilovadan xizmat talab qiladigan biznes ilovasidir. So'rov HTTP, Java Message Service (JMS) transporti orqali SOAP xabarlari yordamida berilgan veb-manzil orqali qayta ishlanadi yoki to'g'ridan-to'g'ri Enterprise JavaBeans (EJB) sifatida chaqiriladi. Xizmat so'rovni qabul qiladi, uni qayta ishlaydi va javob qaytaradi. Oddiy veb-xizmatlarga ob-havo ma'lumotlari yoki birja kotirovkalarini olish kiradi. Usul chaqiruvi sinxrondir, ya'ni usul natija mavjud bo'lguncha kutadi. Tranzaksiya veb-xizmatlari, qo'llab-quvvatlovchi kotirovkalar, biznesdan biznesga (B2B) yoki biznesdan mijozga (B2C) operatsiyalari aviakompaniyalarni bron qilish va xarid buyurtmalarini o'z ichiga oladi.
Veb-xizmatlar haqiqiy xizmatni yoki xizmatga kiradigan mijozni o'z ichiga olishi mumkin.
Veb-xizmatlar veb-ilovalar bo'lib, ular aks holda aloqa qilmaydigan ilovalar bilan integratsiyalashgan holda biznes jarayonlaringizning moslashuvchanligini oshirishga yordam beradi. Mahalliy kutubxonangizdagi ichki kutubxona dasturi veb-xizmatlar kontseptsiyasi va uning evolyutsiyasining yaxshi namunasidir. Veb-xizmat tushunchasi muddatdan oldin ham mavjud edi; kontseptsiya Internetning yaratilishi bilan keng qabul qilindi. Internet yaratilishidan oldin siz kutubxonangizga tashrif buyurdingiz, to'plamlarni qidirdingiz va kitoblaringizni tekshirdingiz. Agar siz o'zingiz xohlagan kitobni topmagan bo'lsangiz, kutubxonachi sizni kompyuter yoki telefon orqali qidirib topdi va kitobni yaqin atrofdagi kutubxonadan topdi. Kutubxonachi siz uchun kitobga buyurtma berdi va siz uni mahalliy kutubxonangizga yetkazilgandan keyin olib oldingiz. Veb-xizmat ilovalarini o'rnatish orqali siz kutubxonaga tashrifingizni soddalashtirishingiz mumkin.
Endi siz bir vaqtning o'zida mahalliy kutubxonalar to'plamini va boshqa mahalliy kutubxonalarni qidirishingiz mumkin. Boshqa kutubxonalar kutubxonangizni oʻz kolleksiyalarini qidirish uchun veb-xizmat bilan taʼminlasa (xizmat Universal Description Discovery and Integration (UDDI) orqali taqdim etilgan boʻlishi mumkin), sizning natijalaringiz oʻz resurslarini beradi. Tekshirish va yuborish uchun boshqa veb-xizmat ilovasidan foydalanishingiz mumkin. Veb-xizmat ilovalaridan foydalanish vaqtni tejaydi va siz uchun qulaylik yaratadi, shuningdek, kutubxonachini boshqa biznes vazifalarini bajarishdan ozod qiladi.
Veb-xizmatlar dasturlashda xizmatga yo'naltirilgan arxitektura (SOA) yondashuvini aks ettiradi. Ushbu yondashuv tarmoqda mavjud xizmatlarni topish va amalga oshirish yoki vazifani bajarish uchun mavjud ilovalarni ishga tushirish orqali ilovalarni yaratish g'oyasiga asoslanadi. Veb-xizmatlar o'zaro muvofiqlikni ta'minlaydi, masalan, veb-xizmat ilovalari turli dasturlash tillarida yaratilgan komponentlarni xuddi bir til yordamida yaratilgandek birgalikda ishlash uchun taqdim etadi. Veb-xizmatlar HTTP kabi mavjud transport texnologiyalariga va dasturni ishga tushirish uchun Kengaytiriladigan Belgilash tili (XML) kabi standart maʼlumotlarni kodlash texnikasiga tayanadi.
Veb-xizmatlarning asosiy tarkibiy qismlari quyidagilardan iborat:
Veb-xizmatlarni tavsiflash tili (WSDL)
WSDL - bu veb-xizmatni tavsiflovchi XML-ga asoslangan fayl. Veb-xizmat so'rovi ushbu fayldan xizmatga ulanish uchun foydalanadi.
Sovun
SOAP - bu veb-xizmat so'rovi xizmatni chaqirish uchun foydalanadigan XML-ga asoslangan protokol.
Batafsilroq stsenariy uchun Plants by WebSphere® nomli uydirma onlayn bog' ta'minoti chakana sotuvchisi hikoyasi va ushbu sotuvchi veb-xizmatlar konsepsiyasini qanday o'z ichiga olganligi haqida ko'proq ma'lumot olish uchun veb-xizmatlar stsenariysi haqida umumiy ma'lumotga qarang.
Qo'llab-quvvatlanadigan standartlar va spetsifikatsiyalarning to'liq ro'yxati uchun veb-xizmatlarning spetsifikatsiyalari va API hujjatlariga qarang.