Internet Windows Android
Kengaytirish

Veb-xizmatlar - misollar. Umumiy veb-xizmatlari veb-xizmati nima

1C: Enterprise veb-xizmatlari mexanizmi bir xil nomdagi metadata ob'ektlaridan foydalanishga asoslangan, ya'ni. "Veb xizmatlar" bo'limidan konfiguratsiya ob'ektlari.

1. UMUMIY TA’rifLAR

Keling, “Veb-servis” atamasining umumlashtirilgan ta’rifini berishga harakat qilaylik.

veb-xizmat ta’minlovchi tarmoq texnologiyasidir dasturlararo o'zaro ta'sir(turli ilovalar orasida) asosida veb standartlari. Veb-xizmatlar bir ilovadan ikkinchisiga kirish va bir vaqtning o'zida ma'lum funktsiyalarni bajarish imkonini beradi.

Veb-xizmat URI qatori (Uniform Resource Identifier) ​​- yagona resurs identifikatori (bu resursni aniqlash imkonini beruvchi belgilar qatori) bilan aniqlanadi.

Veb-xizmat formatda taqdim etilgan dasturlash interfeysiga ega WSDL(Web Services Description Language) - XML ​​tiliga asoslangan veb-xizmatlarni tavsiflash va ularga kirish tili (http://www.w3.org/TR/wsdl spetsifikatsiyasi). U veb-xizmatning tashqi interfeyslarining yagona taqdimoti uchun mo'ljallangan va boshqa dastur ushbu dasturda bunday "xizmat" borligini bilishi uchun foydalaniladi (ya'ni veb-saytdagi birinchi dastur WSDL faylida uning xizmatlari haqida ma'lumot beradi). format).

Boshqa tizimlar SOAP (Simple Object Access Protocol) xabarlarini almashish orqali veb-xizmat bilan o'zaro ta'sir qiladi - taqsimlangan hisoblash muhitida tuzilgan xabarlarni almashish uchun protokol (http://www.w3.org/TR/soap spetsifikatsiyasi). Har qanday matnga asoslangan protokol singari, SOAP har qanday amaliy qatlam protokoli bilan ishlatilishi mumkin: SMTP, FTP, HTTPS va boshqalar, lekin ko'pincha SOAP HTTP orqali qo'llaniladi.

Shakl 1. Web-servis tushunchasi.

SOAP ixtiyoriy XML xabar almashish va masofaviy protsedura chaqiruvi (RPC) uchun ishlatiladi.

Shunday qilib, veb-xizmat va ilova o'rtasida XML hujjatlari xabarlar shaklida almashinadi. Veb-xizmat standartlari quyidagilarni belgilaydi:

Xabar formati, xabar yuboriladigan interfeys;

Xizmatni amalga oshiruvchi ilovaga xabar mazmunini ulash qoidalari va aksincha;

Interfeyslarni nashr qilish va qidirish mexanizmlari.

Veb-xizmatlardan eng oddiy va eng aniq foydalanish Internetda mavjud bo'lgan davlat xizmatlaridan ma'lumotnoma ma'lumotlarini olishdir. Masalan, Aeroflot o'z parvozlari haqida veb-xizmat orqali ma'lumot beradi, Rossiya banki - valyuta kurslari, qimmatli qog'ozlar, kredit tashkilotlari haqida ma'lumot - ko'plab variantlar bo'lishi mumkin.

2. WEB-"1C: KORXONA" TIZIMIDAGI XIZMATLAR

1C: Enterprise 8 dastur yechimi quyidagilar bo'lishi mumkin:

Veb-xizmat provayderi;

1C: Enterprise 8 tizimida veb-xizmatlar boshqa axborot tizimlari va 1C: Enterprise 8 ilovalari bilan integratsiyalashuv uchun ishlatiladigan platforma mexanizmlaridan biridir.

Boshqacha qilib aytganda, 1C: Enterprise veb-xizmatlari orqali o'z funksionalligini eksport qilishi mumkin. Ularning ta'riflari konfiguratsiya daraxtida o'rnatiladi va ixtiyoriy axborot tizimlari uchun mavjud bo'ladi ularni veb-serverda nashr qilish orqali.

1C: Enterprise-dagi veb-xizmatlar mexanizmi Xizmatga Yo'naltirilgan Arxitekturani (SOA) qo'llab-quvvatlash vositasidir, ya'ni dasturlar bir-biri bilan ma'lumot almashish uchun "xizmatlar" dan foydalanadi.

1C: Enterprise funksiyasi veb-xizmatlarning tashqi iste'molchilari uchun mavjud bo'lishi uchun siz quyidagilarni bajarishingiz kerak:

Konfiguratsiyada kerakli miqdordagi veb-xizmatlarni yaratish;

Veb-xizmat yaratish bu:

Veb-xizmat konfiguratsiya ob'ektining metama'lumotlar daraxtiga qo'shimcha ravishda;

Ushbu veb-xizmat amalga oshirishi mumkin bo'lgan operatsiyalar tavsifi;

Operatsion parametrlarining tavsifi.

Veb-xizmat konfiguratsiya ob'ekti o'rnatilgan tilda muayyan veb-xizmat operatsiyalari chaqirilganda bajariladigan protseduralarni yaratuvchi modulni o'z ichiga oladi. Veb-xizmat ishlash parametrlari turlari XDTO turlari yordamida tavsiflanadi va XDTO qiymatlari yoki XDTO ob'ektlari bo'lishi mumkin.

Veb-xizmatga qo'ng'iroq quyidagicha amalga oshiriladi:

Axborot bazasiga mos ulanish ulanish hovuzidan tanlanadi; zarur ulanish bo'lmasa, ulanish yaratiladi;

Yangi seans yaratildi;

So'ralgan veb-xizmat usuli chaqiriladi.

1C: Enterprise-da amalga oshirilgan veb-xizmatlar mexanizmi quyidagi standartlarni qo'llab-quvvatlaydi:

WS-I asosiy profili 1.1;

SSL 3.0/TLS 1.0.

3. O'RGANISHWEB-"1C: KORXONA" TIZIMIDAGI XIZMATLAR

Veb-xizmatlar boshqa axborot tizimlari bilan integratsiyalashuv uchun foydalaniladigan platforma mexanizmlaridan biridir. Bu SOA (xizmatga yo'naltirilgan arxitektura) - xizmatlarga yo'naltirilgan arxitekturani qo'llab-quvvatlash vositasi bo'lib, u ilovalar va axborot tizimlarini integratsiyalashning zamonaviy standartidir.

Xizmat ko'rsatishga yo'naltirilgan arxitekturaning muhim afzalligi shundaki, u mavjud echimlarni yo'q qilmasdan korxona infratuzilmasini bir xilda rivojlantirish imkonini beradi. Uning ishlatilishi heterojen va eski tizimlarni zamonaviy korxona landshaftiga integratsiyalash orqali xarajatlarni minimallashtirishga imkon beradi. Bu bo'sh bog'langan dasturiy ta'minot komponentlarini qayta foydalanishni maksimal darajada oshirish uchun amalga oshirish imkonini beradi.

Xizmatga yo'naltirilgan arxitektura faol ishlab chiqilmoqda va yirik sotuvchilar tomonidan qo'llab-quvvatlanmoqda. U avtonom yoki tashqaridan boshqariladigan xizmatlar asosida qurilgan. Veb-xizmatlar ularni amalga oshirishning afzal usuli hisoblanadi. Ular platformadan mustaqil, mustaqil va universal qo'llab-quvvatlanadi.

Ilova yechimi 1C: Enterprise 8 ham veb-xizmatlar provayderi, ham boshqa provayderlar tomonidan nashr etilgan veb-xizmatlarning iste'molchisi bo'lishi mumkin.

O'zboshimchalik bilan apparat va dasturiy platformalardan foydalanadigan tizimlar iste'molchi sifatida harakat qilishi mumkin. Veb-xizmatlar texnologiyasi platformadan mustaqil.


Veb-xizmatlarni texnik amalga oshirish

Agar dastur yechimi veb-xizmat provayderi bo'lsa, u holda ham fayl, ham mijoz-server versiyalarida dastur yechimi va veb-xizmat iste'molchilari o'rtasidagi o'zaro aloqa veb-server kengaytmasi modulidan foydalangan holda veb-server orqali amalga oshiriladi.

Bunday holda, iste'molchi dastur yechimining veb-xizmatiga kirganda, veb-xizmat moduli bajariladi. Ushbu modul konfiguratsiyada mavjud va u veb-xizmatning muayyan operatsiyalarini chaqirishda bajariladigan protseduralarni o'z ichiga oladi.

Mijoz-server operatsiyasi holatida ushbu modul klasterda bajariladi. Ishning fayl versiyasida - veb-server kengaytmasi modulida.

Agar dastur yechimi uchinchi tomon veb-xizmatining iste'molchisi bo'lsa, u holda dastur yechimi va veb-xizmat provayderi o'rtasidagi o'zaro aloqa mijoz ilovasi tomonidan amalga oshiriladi. U veb-xizmatning ma'lum operatsiyalarini chaqiradi va olingan ma'lumotlarni qayta ishlaydi.

Veb-xizmat iste'molchisi sifatida ishlaydigan 1C: Enterprise platformasi ikkilik ma'lumotlarni MTOM protokoli orqali optimallashtirilgan uzatishni qo'llab-quvvatlaydi. MTOM rejimi 1C: Enterprise da avtomatik ravishda yoqiladi.

Veb-xizmat arxitekturasiga asoslanib, biz veb-xizmatlarni amalga oshirishning bir qismi sifatida quyidagi ikkita komponentni yaratamiz:

Xizmat ko'rsatuvchi yoki nashriyotchi

Bu veb-xizmat provayderi. Xizmat ko'rsatuvchi provayder ushbu xizmatni amalga oshiradi va uni Internet yoki intranetda mavjud qiladi. Biz .NET SDK yordamida oddiy veb-xizmatni yozamiz va nashr qilamiz.

Xizmat ko'rsatuvchi yoki iste'molchi

Bu har qanday veb-xizmat iste'molchisi. So'rovchi tarmoq ulanishini ochish va XML so'rovini yuborish orqali mavjud veb-xizmatdan foydalanadi. Shuningdek, biz veb-xizmatlar uchun ikkita so'rov yozamiz: bitta veb-iste'molchi (ASP.NET ilovasi) va Windows ilovalari asosidagi boshqa iste'molchi.

Quyida xizmat ko'rsatuvchi provayder sifatida ishlaydigan va ilovalar tomonidan ishlatiladigan veb-xizmatlar sifatida ikkita usulni (qo'shish va SayHello) ko'rsatadigan veb-xizmatning birinchi namunasi keltirilgan. Bu veb-xizmat uchun standart shablondir. .NET xizmatlari .asmx kengaytmasidan foydalanadi. Veb-xizmat sifatida taqdim etilgan usul WebMethod atributiga ega ekanligini unutmang. Ushbu faylni IIS virtual katalogida FirstService.asmx sifatida saqlang (IIS sozlamalarida tasvirlanganidek, masalan, c:\MyWebSerces).

FirstService.asmx

<%@ WebService language = "C" class = "FirstService" %>tizimdan foydalanish; System.Web.Services-dan foydalanish; System.Xml.Serialization yordamida; umumiy klass FirstService: WebService ( public int Add(int a, int b) (qaytar a + b; ) umumiy string SayHello() ( "Salom Dunyo"ni qaytarish; ))

Veb-xizmatni sinab ko'rish uchun u nashr etilishi kerak. Veb-xizmat intranetda ham, Internetda ham nashr etilishi mumkin. Biz ushbu veb-xizmatni mahalliy kompyuterda ishlaydigan IISga nashr qilamiz. IIS-ni sozlashdan boshlaylik.

  • Boshlash → Sozlamalar → Boshqaruv paneli → Ma'muriy asboblar → Internet xizmatlari menejerini oching.
  • Standart veb-saytni kengaytiring va o'ng tugmasini bosing; Yangi → Virtual katalogni tanlang. Virtual katalog yaratish ustasi ochiladi. "Keyingi" tugmasini bosing.
  • Virtual katalog ekrani paydo bo'ladi. Virtual katalog nomini kiriting. Masalan, MyWebServices. va Keyingiga bosing.
  • "Veb-kontent katalogi" ekrani ochiladi.
  • Virtual katalog uchun katalog nomini kiriting. Masalan, c:\MyWebServices Keyingiga bosing.
  • Kirish ruxsati ekrani paydo bo'ladi. Sozlamalarni talablaringizga qarab o'zgartiring. Keling, ushbu mashq uchun standart sozlamalarni saqlab qolaylik.
  • "Keyingi" tugmasini bosing. Bu IIS sozlamalarini yakunlaydi.
  • O'rnatishni yakunlash uchun "Finish" tugmasini bosing.

IIS to'g'ri sozlanganligini tekshirish uchun HTML faylni (masalan, x.html) yuqorida yaratilgan virtual katalogga (C:\MyWebServices) ko'chiring. Endi Internet Explorer-ni oching va http://localhost/MyWebServices/x.html kiriting. U x.html faylini ochishi kerak.

Eslatma. Agar bu ishlamasa, localhostni qurilmangizning IP manzili bilan almashtirib ko'ring. Agar u hali ham ishlamasa, IIS ishlayotganligini tekshiring; IIS va virtual katalogni qayta sozlashingiz kerak bo'lishi mumkin.

Ushbu veb-xizmatni sinab ko'rish uchun FirstService.asmx faylini yuqorida yaratilgan IIS virtual katalogiga ko'chiring (C:\MyWebServices). Internet Explorer-da veb-xizmatni oching (http://localhost/MyWebServices/FirstService.asmx). U veb-xizmat sahifasini ochishi kerak. Sahifada ilovamizga veb-xizmat sifatida taqdim etadigan ikkita usulga havolalar bo'lishi kerak. Tabriklaymiz! Siz birinchi veb-xizmatingizni yozdingiz!

Veb-xizmat sinovlari

Ko'rib turganimizdek, .NET Framework-da veb-xizmatlarni yozish oson. Veb-xizmatlarni yozish .NET muhitida ham oson; ammo, u biroz faolroq. Yuqorida aytib o'tilganidek, biz ikki turdagi xizmatlar iste'molchilarini yozamiz: biri veb-sayt, ikkinchisi esa foydalanuvchiga asoslangan Windows ilovasi. Keling, birinchi veb-xizmat iste'molchimizni yozaylik.

Veb-xizmatlar

Quyida berilgan tarzda veb-iste'molchini yozing. Uni WebApp.aspx deb nomlang. Bu ASP.NET ilovasi ekanligini unutmang. Buni veb-xizmat virtual katalogida saqlang (c:\MyWebServices\WebApp.axpx). Ushbu ilovada foydalanuvchidan raqamlarni qo'shish uchun ishlatiladigan ikkita matn maydoni mavjud. Unda bitta “Ishga tushirish” tugmasi mavjud bo‘lib, uni bosgandan so‘ng Qo‘shish va SayHello veb-xizmatlarini oladi.

WebApp.axpx

<%@ Page Language="C#" %>

Qo'shiladigan birinchi raqam: 4< /asp:TextBox>

Qo'shish uchun ikkinchi raqam: 5

Veb-xizmat natijasi -

Salom dunyo xizmati : teg< /asp:Label>

Xizmat qo'shish : & teg

Iste'molchini yaratgandan so'ng, veb-xizmatni ishlatish uchun proksi-server yaratishimiz kerak. Biz qo'shilgan veb-xizmatga murojaat qilganimizda, bu ish biz uchun Visual Studio .NET tomonidan avtomatik ravishda amalga oshiriladi. Quyidagi qadamlarni bajarish kerak:

  • Veb-xizmatdan foydalanish uchun proksi-server yarating. Proksi-server .NET SDK bilan ta'minlangan WSDL yordam dasturi yordamida yaratilgan. Ushbu yordamchi dastur veb-xizmatdan ma'lumot oladi va proksi-server yaratadi. Proksi-server faqat ma'lum bir veb-xizmat uchun amal qiladi. Agar siz boshqa veb-xizmatlardan foydalanishingiz kerak bo'lsa, ushbu xizmat uchun proksi-server yaratishingiz kerak. Visual Studio .NET veb-xizmat ma'lumotnomasi qo'shilganda avtomatik ravishda proksi-server yaratadi. .NET SDK bilan ta'minlangan WSDL yordam dasturidan foydalanib, veb-xizmat uchun proksi-server yarating. U joriy katalogda FirstSevice.cs faylini yaratadi. Veb-xizmat uchun FirstService.dll (proksi) yaratish uchun uni kompilyatsiya qilishimiz kerak.
  • c:>WSDL http://localhost/MyWebServices/FirstService.asmx?WSDL
  • c:> csc /t:library FirstService.cs
  • Kompilyatsiya qilingan proksi-serverni veb-xizmat virtual katalogining bin katalogiga joylashtiring (c:\MyWebServices\bin). Internet Information Services (IIS) ushbu katalogda proksi-serverni qidiradi.
  • Xuddi biz qilgan kabi xizmat iste'molchisini yarating. E'tibor bering, veb-xizmat proksi-server ob'ekti iste'molchida yaratilgan. Ushbu proksi-server xizmat bilan o'zaro aloqada bo'ladi.
  • Uni sinab ko'rish uchun IE-ga iste'molchi URL-manzilini kiriting (masalan, http://localhost/MyWebServices/WebApp.aspx).

Windows ilovalariga asoslangan veb-xizmat iste'molchisi

Windows ilovalari asosida veb-xizmat dasturini yozish boshqa har qanday Windows ilovasini yozishga o'xshaydi. Siz faqat proksi-server yaratishingiz kerak (biz allaqachon qilganmiz) va dasturni kompilyatsiya qilishda ushbu proksi-serverga murojaat qiling. Quyida veb-xizmatdan foydalanadigan Windows ilovamiz mavjud. Bu ilova veb-xizmat obyektini (albatta proksi-server) yaratadi va undagi SayHello va Add usullarini chaqiradi.

WinApp.cs

tizimdan foydalanish; System.IO dan foydalanish; nom maydoni SvcConsumer ( sinf SvcEater ( umumiy statik bekor Main(String args) ( FirstService mySvc = new FirstService(); Console.WriteLine("Salom Dunyo Xizmati: " + mySvc.SayHello()); Console.WriteLine("Calling) 2, 3) Xizmat: " + mySvc.Add(2, 3).ToString()); ) ) )

Uni c: \> csc /r:FirstService.dll WinApp.cs bilan kompilyatsiya qiling. U WinApp.exe faylini yaratadi. Ilova va veb-xizmatni sinab ko'rish uchun uni ishga tushiring.

Endi savol tug'iladi: ushbu ilova haqiqatan ham veb-xizmatni chaqirayotganiga qanday ishonch hosil qilishingiz mumkin?

Tekshirish oson. Veb-server bilan bog'lana olmasligi uchun veb-serveringizni to'xtating. Endi WinApp ilovasini ishga tushiring. Bu ish vaqtida istisno qiladi. Endi veb-serverni qayta ishga tushiring. U ishlashi kerak.

Izoh: Foydalanish sohalari. Afzalliklar. .NET platformasi uchun veb-xizmatlarni ishlab chiqish xususiyatlari. Veb-xizmatning tavsifi va kashfiyoti

XML veb-xizmati nima?

Axborot texnologiyalarining rivojlanishi bilan dasturlarni yozishda turli xil yondashuvlar paydo bo'ldi: modulli dasturlash, hodisaga asoslangan dasturlash, komponentlarga yo'naltirilgan dasturlash va dizayn. Ushbu yondashuvlarning mantiqiy davomi xizmatga yo'naltirilgan edi dasturiy ta'minotni ishlab chiqish.

Xizmatga yo'naltirilgan yondashuvlardan foydalanish mikro darajada (ob'ekt darajasi) dan farqli o'laroq, makro darajada (xizmat darajasida) qayta foydalanish (qayta foydalanish) haqida gapirishga imkon beradi. Xizmatga yo'naltirilgan yondashuv oddiy va umumiy qabul qilingan standartlardan foydalanishni o'z ichiga oladi, bu esa turli xil ilovalarga bir-birining funksionalligidan foydalanish imkonini beradi. Xizmatlar turli xil platformalarda turli xil dasturlash tillaridan foydalangan holda yozilishi mumkin. Bundan tashqari, xizmatlar dunyoning istalgan nuqtasida alohida yoki dasturiy ta'minot paketining bir qismi sifatida joylashtirilishi mumkin va shu tariqa tarmoq orqali ularning funksionalligiga kirishni ta'minlaydi.

Qo'ng'iroq qilaylik xizmat biznes funktsiyasini amalga oshiradigan va quyidagi xususiyatlarga ega bo'lgan resurs:

  • qayta foydalanish mumkin;
  • bir yoki bir nechta aniq texnologiyadan mustaqil interfeyslar bilan belgilanadi;
  • boshqa shunga o'xshash resurslar bilan erkin bog'langan va resurslarning bir-biri bilan o'zaro ta'sirini ta'minlaydigan aloqa protokollari orqali chaqirilishi mumkin.

Xizmatning alohida holati XML veb-xizmatidir.

XML veb-xizmati veb-ilovaning maxsus turi bo'lib, u:

  • veb-serverda joylashtirilgan;
  • tashqi mijozlar tomonidan chaqirilishi mumkin bo'lgan veb usullarini nashr etadi;
  • veb usullarini chaqirish uchun buyruqlar bo'lgan HTTP so'rovlarini qabul qilishni kutadi;
  • veb usullarini bajaradi va natijalarni qaytaradi.

An'anaviy veb-ilovadan farqli o'laroq, veb-xizmat foydalanuvchi interfeysiga ega emas. Buning o'rniga u API-ga ega, ya'ni veb-xizmat masofadan turib (masalan, Internet orqali) chaqirilishi mumkin bo'lgan funktsiyalarni (veb-uslublar) taqdim etadi. Veb-xizmat oxirgi foydalanuvchilarga xizmat ko'rsatish uchun mo'ljallanmagan. Uning vazifasi veb-ilovalar, GUI ilovalari yoki konsol ilovalari bo'ladimi, boshqa ilovalarga xizmatlar ko'rsatishdir.

Veb-xizmat real vaqt rejimida aksiyalar narxlari haqida ma'lumot berishi, kredit kartalarini tekshirishi yoki ob-havo haqida xabar berishi mumkin. Veb-xizmatlar an'anaviy ilovalar kabi xilma-xildir.

Veb-xizmatlar ma'lum bir kompaniyaning mulki emas. Bu ochiq protokollarga (SOAP, HTTP va boshqalar) asoslangan sanoat standartidir. Veb-xizmatlar turli platformalarda (jumladan, Windows yoki UNIX bilan ishlaydigan serverlarda) o'rnatiladi. Veb-xizmatlar ko'plab ishlab chiqish vositalari (matn muharriridan Microsoft Visual Studio oilasigacha) yordamida ishlab chiqilishi mumkin.

Ko'pgina veb-xizmatlarning usullari SOAP xabarlarini o'z ichiga olgan HTTP so'rovlari bilan chaqiriladi. SOAP HTTP va boshqa protokollar orqali masofaviy protseduralarni chaqirish uchun XML tilidir (XML lug'ati) (SOAPning to'liq tavsifi http://www.w3.org/TR/SOAP) .

Boshqa masofaviy qo'ng'iroq qilish texnologiyalari orasida veb-xizmatlarning o'rni

Ko'pgina masofaviy chaqiruv protokollari va texnologiyalari mavjud: Microsoft tarqatilgan komponent ob'ekt modeli (DCOM), Ob'ektlarni boshqarish guruhining Common Object Request Broker Architecture (CORBA), Sun's Remote Method Invocation (RMI), . NET Remoting, XML veb-xizmatlari.

Ushbu komponentlarga yo'naltirilgan texnologiyalarning barchasi (DCOM, CORBA va RMI) ko'p yillar davomida Intranet ilovalarida muvaffaqiyatli qo'llanilmoqda. Ular mustahkam, kengaytiriladigan arxitekturani ta'minlaydi. Biroq, Internetda ushbu texnologiyalardan foydalanishda ikkita asosiy muammo mavjud. Birinchidan, ular bir-biri bilan yaxshi munosabatda bo'lmaydilar. Barcha texnologiyalar ob'ektlarda ishlaydi, lekin tafsilotlarda sezilarli darajada farqlanadi: hayot aylanishini boshqarish, konstruktorlarni qo'llab-quvvatlash va merosni qo'llab-quvvatlash darajasi. Ikkinchi, muhimroq jihat shundaki, RPC o'zaro ta'siriga e'tibor aniq ob'ekt usuli chaqiruvlariga asoslangan chambarchas bog'langan tizimlarni qurishga olib keladi.

Ushbu texnologiyalardan farqli o'laroq, XML Web Services va . NET Remoting to'liq amalga oshiriladi ob'ektga yo'naltirilgan yondashuv veb-dasturlash uchun.

XML veb-xizmati- Internet-mijozlarga API funktsiyalari yoki veb-uslublar to'plamini taqdim etuvchi komponent. XML nomning bir qismidir, chunki veb-xizmatlar va ularning mijozlari ma'lumotlarni almashish uchun foydalanadilar. Veb-xizmatlar HTTP, XML (Extensible Markup Language), SOAP (Simple Object Access Protocol - Internet standarti) kabi ochiq standartlarga asoslangan bo'lib, u HTTP va boshqa protokollardan foydalangan holda ilovalarning o'zaro ta'sirini, ya'ni bir-birining usullarini chaqirishini tavsiflaydi. Veb-servislarning asosiy vazifasi dasturlararo o'zaro ta'sirni ta'minlashdir. Ko'pchilik UNIX serverlarida ishlaydi va ularga Windows mijozlari kirishadi. Veb-xizmatlarga uzatilgan ma'lumotlar XML-ga ketma-ketlashtiriladi va SOAP paketlarida yuboriladi. Bunday xabarlarning mazmuni haqidagi metama'lumotlar veb-xizmatning WSDL shartnomasida va XSD sxemalarida saqlanadi. Ushbu yondashuvning asosiy afzalligi - metama'lumotlarning o'qilishi. Ishlab chiquvchi veb-xizmatning to'liq tavsifini osongina ko'rishi va hatto SOAP paketlarini tahlil qiluvchi o'z modulini yaratishi mumkin.

.NET Remoting taqsimlangan ob'ektlar uchun infratuzilmani ta'minlaydi. Bu xabarlarni uzatishga asoslangan oddiy veb-xizmatlar arxitekturasidan ancha murakkabroq. . NET Remoting mos yozuvlar va qiymatlar bo'yicha parametrlarni uzatish, qayta qo'ng'iroqlar, bir nechta ob'ektni faollashtirish va hayot aylanishini boshqarish siyosatlarini o'z ichiga oladi. Ushbu xususiyatlardan foydalanish uchun mijoz ilovasi barcha texnologiyalarni yaxshi bilishi kerak. Ma'lumotlar. NET Remoting ikkilik yoki SOAP formatida yuboriladi. Biroq, har qanday holatda, uzatiladigan ma'lumotlarning tuzilishi haqidagi metama'lumotlar umumiy tilning ishlash vaqtida mavjud. Umumiy til ish vaqti (CLR) bo'lmasa, mijoz ilovasi . NET Remoting SOAP sarlavhalari. Ya'ni. NET Remoting veb-xizmatlariga qaraganda ancha yuqori talablarga ega.

.NET platformasida veb-xizmatlarni ishlab chiqish

Veb-xizmatlarni yozishning ko'plab usullari mavjud. Ular qo'lda yoki Microsoft, IBM va boshqalar tomonidan taqdim etilgan SOAP vositalari yordamida ishlab chiqilishi mumkin.Microsoft bilan veb-xizmatlarni yozish. NET ikkita afzalliklarga ega:

  • .NET Framework sinf kutubxonasini taqdim etish va individual rivojlanish bosqichlarini avtomatlashtirish orqali ishlab chiqish jarayonini sezilarli darajada osonlashtiradi;
  • .NET Framework bilan yozilgan veb-xizmatlar boshqariladigan ilovalardir. Ya'ni, bunday ilovalarda xotiraning oqishi, noto'g'ri ishga tushirilgan ko'rsatkichlar va boshqa odatiy dasturlash muammolari mavjud emas.

Yaratilish

Keling, ikkita raqamni qo'shishni amalga oshiradigan oddiy AdditionService veb-xizmatini ishlab chiqaylik. Unda faqat bitta qo'shish usuli bo'ladi, u parametr sifatida ikkita butun sonni oladi va butun sonni qaytaradi. AdditionService Microsoft .NET Framework yordamida veb-xizmatlarni dasturlashning bir qancha muhim tamoyillarini namoyish etadi.

  • Veb-xizmatlar ASMX fayllari sifatida amalga oshiriladi. ASMX - bu asosiy ASP .NET Machine.config konfiguratsiya faylida ASP .NET (aniqrog'i, ASP.NET HTTP Handler) bilan ro'yxatdan o'tgan maxsus fayl nomi kengaytmasi.
  • ASMX fayllari @WebService direktivasi bilan boshlanadi. Ushbu direktiva hech bo'lmaganda veb-xizmatdan iborat sinfni ko'rsatuvchi Class atributini o'z ichiga olishi kerak.
  • Veb-xizmat sinflari ixtiyoriy WebService atributlariga ega bo'lishi mumkin. Ushbu misolda ushbu atribut veb-xizmat nomini va foydalanuvchi brauzerda AdditionService.asmx ga qo'ng'iroq qilganda HTML sahifasida ko'rsatiladigan tavsifni belgilaydi.
  • Veb-uslublar WebMethod atributini veb-xizmat sinfining umumiy usullariga belgilash orqali e'lon qilinadi. Ichkarida qo'llaniladigan, ammo tashqi mijozlar uchun mavjud bo'lmagan yordamchi usullar uchun bu atribut shunchaki o'tkazib yuboriladi.
  • HTTP, XML va SOAP "ko'rinmas". XML ma'lumotlari va SOAP xabarlari .NET Framework tomonidan boshqariladi.

AdditionService.asmx<%@ WebService language="C#" Class="AddService" %>System.Web.Services sinfidan foydalangan holda tizimdan foydalanish AddService ( public int Add (int a, int b) (qaytish a + b ) )

Kichik hajmiga qaramay, AdditionService.asmx ASP.NET veb-serveriga o'rnatilganda to'liq veb-xizmat hisoblanadi. Uning usullari SOAP, HTTP GET va HTTP POST bilan qo'llaniladi va natijalarni SOAP javoblari yoki oddiy XML o'ramlari sifatida qaytarishi mumkin.

Fon kodidan foydalanib, veb-xizmat sinflari asmx fayllaridan alohida fayllarga olinishi mumkin.

Veb-xizmatlar foydalanishni qo'llab-quvvatlaydi murakkab ma'lumotlar turlari kirish yoki chiqish parametrlari sifatida. 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-xizmatlar o'z usullaringizga qo'ng'iroq qilish imkonini beradi asinxron. Asinxron qo'ng'iroq, veb-xizmat qo'ng'iroqni qayta ishlash uchun 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 (delegat mexanizmi) tomonidan qo'ng'iroqni qayta ishlash tugashi haqidagi xabarnomaga obuna bo'lish orqali olinadi.

kabi vositalar yordamida veb-xizmatlar yaratilishi mumkin Microsoft Visual Studio 2005. 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.


Veb-xizmat kashfiyoti

Boshqa ishlab chiquvchilar AdditionService mavjudligi haqida qayerdan bilishadi?

Birinchidan, DISCO (kashf qilish uchun qisqacha) 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, biroq 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 qidirish 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. Ular, shuningdek, topilgan va tanlangan veb-xizmatlar uchun o'rash sinflarini yaratadilar.

Natijalar

XML veb-xizmati - bu XML va HTTP kabi standartlarni qo'llab-quvvatlovchi turli xil tizimlar tomonidan ishlatilishi mumkin bo'lgan funksionallikni ta'minlovchi dasturiy komponent. Veb-xizmat mijozlari ham mahalliy, ham masofaviy ilovalar bo'lishi mumkin. Veb-xizmatlar oddiy, umume'tirof etilgan standartlar asosida turli xil tizimlarni osongina birlashtirish imkonini beruvchi tuzilmalarni yaratishga imkon beradi.

WEB-xizmati - (inglizcha web-servisdan, sinonimi - onlayn xizmat). Veb-xizmatlar - bu maxsus dasturlar yordamida Internetda taqdim etiladigan xizmatlar. Masalan: xosting, elektron pochta, Internetda turli ma'lumotlarni saqlash (fayllar, xatcho'plar), kalendar va boshqalar kabi xizmatlar keng tarqalgan. Veb-xizmatning muhim xususiyati shundaki, u provayderingizga, kompyuteringizga yoki brauzeringizga bog'liq emas - siz o'zingizning ma'lumotlaringiz bilan dunyoning istalgan nuqtasida ishlashingiz mumkin.

Knyazev A.A. Ommaviy axborot vositalarining entsiklopedik lug'ati. - Bishkek: KRSU nashriyoti. A. A. Knyazev. 2002 yil.

Boshqa lug'atlarda "WEB-xizmati" nima ekanligini ko'ring:

    veb-xizmati

    veb-xizmati- Veb-xizmat. Veb-servis, veb-servis (ingliz veb-xizmati) - bu XML-da aniqlangan interfeyslar qatori bilan aniqlangan va Internet protokollari yordamida uzatiladigan dasturiy tizim. Veb-xizmat - bu ... ... Vikipediyadan foydalanishda modullik birligi

    Veb kesh aloqa protokoli- (WCCP) Cisco tomonidan ishlab chiqilgan Kontentni qayta yo'naltirish protokoli. Trafik oqimlarini real vaqtda qayta yo'naltirish mexanizmini taqdim etadi. O'rnatilgan masshtablash, yukni muvozanatlash, xatolarga chidamlilik mavjud. Cisco IOS ...... Vikipediya

    Veb xaritalar xizmati- (WMS rus veb-xaritasi xizmati) GIS ma'lumotlar bazasi ma'lumotlari asosida xaritalash serveri tomonidan yaratilgan geografik ma'lumotga ega tasvirlarni Internet orqali taqdim etish uchun standart protokol. Ushbu standart ishlab chiqilgan va birinchi marta ... ... Vikipediya

    Salvador veb-mehmonxonasi- (Salvador, Braziliya) Mehmonxona toifasi: 2 yulduzli mehmonxona Manzil: Rua das Alfazemas … Mehmonxona katalogi

    Aparecida veb-mehmonxonasi- (Aparecida, Braziliya) Mehmonxona toifasi: 3 yulduzli mehmonxona Manzil: Av. Isaak Ferrei … Mehmonxona katalogi

    xizmat ko'rsatishga yo'naltirilgan arxitektura- Tashkilotning biznes jarayonlari Buyurtmachining mavjud ilovalari tomonidan taqdim etiladigan xizmatlar asosida amalga oshiriladi. Agar ilovalar xizmatlar (veb-xizmatlar) taqdim etish qobiliyatini qo'llab-quvvatlamasa, mahsulotni amalga oshirish rivojlanadi ... ... Texnik tarjimon uchun qo'llanma

    veb 2

    Web 2.0- Web 2.0 bilan bog'liq bo'lgan asosiy tushunchalar Web 2.0 (Tim O'Reyli tomonidan ta'riflangan) - bu tarmoqdagi o'zaro ta'sirlarni hisobga olgan holda, undan ko'p odamlar foydalanishi bilan yaxshilanadigan tizimlarni loyihalash usuli. Web 2.0 xususiyati. tamoyili hisoblanadi ...... Vikipediya

    veb-sayt- "Veb-sayt" so'rovi bu yerga yo'naltirilgan. Qarang boshqa ma'nolarni ham anglatadi. Bir domen nomi yoki IP manzili ostida birlashtirilgan kompyuter tarmog'idagi veb-sayt (inglizcha Veb-sayt: veb-sayt va sayt "joy") xususiy shaxsning hujjatlari to'plami yoki ... ... Vikipediya

Kitoblar

  • Turizm sohasida axborot texnologiyalari, VN Shitov. Qo'llanmada keng tarqalgan Microsoft Office 2010 paketlari va muqobil komplekslardan foydalangan holda umumiy maqsadli kompyuter texnologiyalari batafsil ko'rib chiqiladi, foydalanish ... 546 rublga sotib oling
  • PHP da veb-saytingiz uchun 75 tayyor yechimlar , Steinmetz W., Ward B.. O'z veb-saytini yaratgan yoki yaratmoqchi bo'lgan har bir kishi muqarrar ravishda bir qator vazifalar va qiyinchiliklarga duch keladi: saytda qanday qilib blog qilish kerak ...... Ovoz berishni "mahkamlash", aniq ...