Žiniatinklio paslaugos: tikrasis sandoris



Žiniatinklio paslaugas gali pasiekti bet kuri programa, sukurta bet kuria kalba. Jame sprendžiamos įvairių programų komunikacijos problemos.

Ar kada pagalvojai kam nors padėti ir neradai, kaip tai padaryti? Taip, aš žinau, kad programinės įrangos kūrėjai neturi laiko tai padaryti. Tiesą sakant, dalis mūsų gyvenimo tenka koduoti vienai ar kitai programai. Taigi visa tai privertė mane galvoti, nes kaip kūrėjas galiu ką nors gero padaryti savo kolegoms kūrėjams.





Kodėl gi neparašius kodo, kurį galėtų naudoti bet kuris kūrėjas, koduojantis bet kuria kalba? Ar tai nebus nuostabu?
Taip! Ir, spėk kas ? Išeitis yra tokia - „interneto paslaugos“

rūšiuoti biblioteką c ++

Žiniatinklio paslaugos pagal W3C apibrėžimą yra „programinės įrangos sistema, sukurta palaikyti sąveikaujančią mašinų tarpusavio sąveiką tinkle“.



Vienoje kalboje sukurtos žiniatinklio paslaugos gali būti naudojamos bet kuria kita kalba, o geriausia tai, kad tai padeda perkelti ryšį iš vienos programos į kitą.

Kai dvi sistemos bendrauja tarpusavyje, programinės įrangos sistema, kuri prašo paslaugų, vadinama paslaugų prašytoju, o programinės įrangos sistema, kuri apdoros užklausą ir teiks paslaugą, vadinama paslaugų teikėja.

Dabar, jei svarstote, kaip vyksta bendravimas, pereikime prie jo.



Yra tam tikros taisyklės, apibrėžiančios, kaip gali vykti bendravimas tarp skirtingų sistemų. Šios taisyklės apima tai, kaip viena sistema gali prašyti duomenų iš kitos sistemos, parametrai, reikalingi duomenų užklausai, sukurtų duomenų struktūra ir klaidų pranešimai, rodomi pažeidus tam tikras taisykles. Šios taisyklės yra apibrėžtos faile, pavadintame WSDL („Web Services Description Language“) su plėtiniu .wsdl.

Atlikus žiniatinklio paslaugą, sukuriamas WSDL failas, apibūdinantis žiniatinklio paslaugą, kuri naudoja muilo protokolą (), kad paskelbtų ar užregistruotų paslaugą UDDI (universalaus paskirstymo atradimas ir sąveika), kad mūsų paslauga būtų prieinama kitiems.
UDDI apibrėžia, į kurią programinės įrangos sistemą reikia kreiptis dėl kokio tipo duomenų.

Paslaugos prašytojas susisiekia su UDDI ir patikrina paslaugų teikėją, kuris pateikia reikalingus duomenis. Tada jis susisiekia su paslaugų teikėju naudodamas muilo protokolą. Paslaugų teikėjas patvirtina užklausą remdamasis WSDL ir siunčia struktūrinius duomenis XML formatu, naudodamas „Soap Protocol“. Šis XML vėl patvirtinamas naudojant XSD (XML schemos apibrėžimas - dokumentas, apibrėžiantis XML taisyklę ar elementus).

Divja

Dabar, kai supratote, kaip tai veikia, leiskite mums sukurti žiniatinklio paslaugą.

Daugiausia yra trys aspektai, kurie valdo žiniatinklio paslaugų plėtrą .NET.

1. Interneto paslaugos sukūrimas
2. Tarpinio serverio sukūrimas
3. Kuriamos žiniatinklio paslaugos vartojimas.

Norėdami sukurti žiniatinklio paslaugą .net:

1. Dešiniuoju pelės mygtuku spustelėkite savo projektą> Pridėti> Naujas elementas.

java kada tai naudoti

1. Žiniatinklis> Žiniatinklio paslauga
2. Įveskite savo interneto paslaugos pavadinimą
3. Spustelėkite pridėti.

Atminkite, kad interneto paslaugų failai baigiasi .asmx
Dabar sukūrėte numatytąją žiniatinklio paslaugą, pamatysite:

naudojant sistemą naudojant „System.Collections.Generic“ naudojant „System.Linq“ naudojant „System.Web“ naudojant „System.Web.Services“ vardų sritį „WebApplication5“ {/// /// „WebService2“ santraukos aprašas /// [„WebService (Namespace = 'http: // tempuri. org / ')] [WebServiceBinding (ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem (false)] // Jei norite, kad šią žiniatinklio paslaugą būtų galima iškviesti iš scenarijaus, naudojant ASP.NET AJAX, atžymėkite šią eilutę. // [System.Web.Script.Services.ScriptService] viešoji klasė WebService2: System.Web.Services.WebService {[WebMethod] viešoji eilutė HelloWorld () {return 'Hello World'}}}

Pirmiau pateiktame kodo fragmente žiniatinklio paslaugų klasė paveldi iš System.Web.Services.WebService, kurią supa žiniatinklio paslaugos atributas [WebService], kur galite nurodyti vardų sritį ir pateikti trumpą žiniatinklio paslaugos aprašymą.

„WebMethod“ atributas [WebMethod] naudojamas deklaruoti metodą kaip žiniatinklio paslaugos dalį. Jis turi būti įdėtas prieš deklaruojant kiekvieną metodą, kurį norite pateikti žiniatinklio tarnyboje, taip pat visi metodai turėtų būti paskelbti viešais.

Norėdami sukurti žiniatinklio paslaugų metodą, pridėkite kodą prie viešojo metodo su žiniatinklio metodo atributu „WebService1“ klasėje. Pavyzdžiui:

[„WebMethod“ public int ConvertToFarenheit (int celsius) {int f = 0 f = (celsijaus * 9/5) + 32 grąžinimo f}

Po to paleiskite žiniatinklio paslaugą, gausime žemiau esantį puslapį:

Tai apima metodus, kuriuos mes pateikiame žiniatinklio tarnyboje, taip pat nuorodą į paslaugos aprašą, kuris yra WSDL failas.
Norėdami išbandyti savo žiniatinklio paslaugą, spustelėkite metodą, kad gautumėte žemiau esantį puslapį. Perduokite parametro vertę ir spustelėkite iškviesti.


Žiniatinklio paslaugos rezultatus gausite taip:

Pažiūrėkime, kaip vartoti žiniatinklio paslaugą, kurią sukūrėme savo programoje.
1. Savo projekte dešiniuoju pelės mygtuku spustelėkite nuorodos> pridėti paslaugos nuorodą

Kaip nurodyta toliau pateiktoje ekrano nuotraukoje:
1. Nurodykite paslaugos aprašo URL arba WSDL failo adresą į adresą. Ir spustelėkite eiti.
Ji randa mūsų sukurtą žiniatinklio paslaugą.
2. Spustelėkite Gerai

Sprendimų naršyklėje, kurią galime pamatyti, „Nuorodose“ sukurtas paslaugų nuorodų katalogas. Jame yra aplankas, kuriame yra visi failai, susiję su žiniatinklio paslaugos vartojimu

Čia „ServiceReference1“ yra mūsų sukurta žiniatinklio paslauga.
„ServiceReference1“> „Reference.svcmap“> reference.cs yra sukurta tarpinio serverio klasė („WebService1SoapClient“), kuria galime iškviesti metodus, apibrėžtus mūsų žiniatinklio tarnyboje.

Norėdami jį naudoti mūsų programoje:
1. Sukurkite tarpinio serverio klasės objektą.
2. Iškvieskite žiniatinklio tarnyboje galimus metodus per tarpinio serverio klasės objektą.

naudojant sistemą naudojant System.Collections.Generic naudojant System.Linq naudojant System.Web naudojant System.Web.UI naudojant System.Web.UI.WebControls naudojant ServiceConsumeApp1.ServiceReference1 naudojant ServiceConsumeApp1.ServiceReference1 vardų sritis ServiceConsumeApp1 {viešoji dalinė klasė WebForm1: System.Web. UI.page {protected void btnConvertRates_Click (object sender, EventArgs e) {WebService1SoapClient fn1 = new WebService1SoapClient () TextBox2.Text = fn1.ConvertToFarenheit (Convert.ToInt32 (TextBox1.Text).

Paleidus programą, išvestis bus rodoma taip, kai žiniatinklio formoje įdėsime atitinkamus valdiklius savo rezultatui rodyti.

Taigi, taip mes kuriame ir naudojame žiniatinklio paslaugą .NET.

Galite sukurti daug žiniatinklio paslaugų .NET, atlikdami minėtus veiksmus. Šias žiniatinklio paslaugas gali pasiekti bet kuri programa, sukurta bet kuria kalba. Taigi žiniatinklio paslaugos sprendžia įvairių programų komunikacijos problemas ir įrodo realų sandorį.

Turite mums klausimą? Prašau paminėti tai komentarų skiltyje ir mes su jumis susisieksime.

Susijusios žinutės:

java kokie yra egzempliorių kintamieji