Veebiteenused: tegelik tehing

Veebiteenustele pääseb juurde mis tahes keeles ehitatud rakendusega. See käsitleb erinevate rakenduste vahelisi suhtlusprobleeme.

Kas olete kunagi mõelnud kedagi aidata ega leidnud võimalust seda teha? Jah, ma tean, et tarkvaraarendajatel pole selle kõige jaoks aega. Tegelikult läheb osa meie elust mõne või teise rakenduse kodeerimisse. Nii et see kõik pani mind mõtlema, kuna arendajana on midagi head, mida saan oma kaasarendajatega teha.





Miks mitte kirjutada kood, mida saaksid kasutada kõik arendajad, kes kodeerivad mis tahes keeles? Kas see poleks vinge?
Jah! Ja arva ära mis ? Lahendus on - “Veebiteenused”

Veebiteenused W3C definitsiooni järgi on 'tarkvarasüsteem, mis on loodud võrgu kaudu koostalitlusvõimelise masina-masina interaktsiooni toetamiseks'.



Ühes keeles välja töötatud veebiteenuseid saab kasutada mis tahes muus keeles ja kõige parem on see, et see aitab ühenduvust ühest rakendusest teise tuua.

Kui kaks süsteemi omavahel suhtlevad, nimetatakse teenuse taotlejaks tarkvara taotlevat tarkvara ja teenuse pakkujaks tarkvara, mis töötleb päringut ja pakub teenust.

Kui nüüd mõtlete, kuidas suhtlus toimub, lähme selle juurde.



sõnastiku andmete struktuur javas

On olemas teatud reeglid, mis määratlevad, kuidas suhtlemine võib toimuda erinevate süsteemide vahel. Need reeglid hõlmavad seda, kuidas üks süsteem saab teiselt süsteemilt andmeid taotleda, andmete taotlemisel vajalikke parameetreid, toodetud andmete struktuuri ja veateateid, mis kuvatakse teatud reeglite rikkumisel. Need reeglid on määratletud failis WSDL (Web Services Description Language) laiendiga .wsdl.

Pärast veebiteenuse loomist luuakse WSDL-fail, et kirjeldada veebiteenust, mis kasutab seebiprotokolli () teenuse avaldamiseks või registreerimiseks UDDI-s (universaalne levitamise avastamine ja koostalitlusvõime), nii et meie teenus oleks teistele kättesaadav.
UDDI määratleb, millise tarkvarasüsteemiga millist tüüpi andmete saamiseks tuleks ühendust võtta.

Teenuse taotleja võtab ühendust UDDI-ga ja kontrollib teenusepakkujat, kes annab talle vajalikud andmed. Seejärel võtab ta teenuseosutajaga ühendust seebiprotokolli abil. Teenusepakkuja kinnitab taotluse, viidates WSDL-ile, ja saadab struktureeritud andmed XML-vormingus tagasi, kasutades seebiprotokolli. See XML kinnitatakse uuesti XSD-ga (XML-i skeemi määratlus - dokument, mis määratleb XML-i reegli või elemendid).

Divya

Nüüd, kui olete aru saanud, kuidas see toimib, arendagem veebiteenust.

Veebiteenuse arendamist .NET-is reguleerib peamiselt kolm aspekti.

1. Veebiteenuse loomine
2. Puhverserveri loomine
3. Loodava veebiteenuse tarbimine.

Veebiteenuse loomiseks .net'is tehke järgmist.

1. Paremklõpsake oma projekti> Lisa> Uus üksus.

1. Veeb> Veebiteenus
2. Pange oma veebiteenusele nimi
3. Klõpsake nuppu Lisa.

Pange tähele, et veebiteenuste failid lõpevad tähisega .asmx
Nüüd olete loonud vaiketeenuse ja näete järgmist:

süsteemi kasutamine System.Collections.Generic abil System.Linq kasutades System.Web süsteemi System.Web.Services abil nimeruumi WebApplication5 {/// /// WebService2 kokkuvõtlik kirjeldus /// [WebService (Namespace = 'http: // tempuri. org / ')] [WebServiceBinding (ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem (false)] // Selle veebiteenuse helistamiseks skriptilt, kasutades ASP.NET AJAX, tühjendage järgmine rida. // [System.Web.Script.Services.ScriptService] avalik klass WebService2: System.Web.Services.WebService {[WebMethod] avalik string HelloWorld () {return 'Hello World'}}}

Ülaltoodud koodijupis pärib veebiteenuse klass süsteemilt.Web.Services.WebService, mida ümbritseb veebiteenuse atribuut [WebService], kus saate määrata nimeruumi ja anda veebiteenuse lühikirjelduse.

Atribuuti WebMethod [WebMethod] kasutatakse meetodi deklareerimiseks veebiteenuse osana. See tuleb asetada enne iga meetodi deklareerimist, mida soovite veebiteenuses avaldada, samuti tuleks kõik meetodid avalikuks kuulutada.

Veebiteenuse meetodi loomiseks lisage oma kood avalikku meetodisse koos veebimeetodi atribuudiga klassi WebService1. Näiteks:

[Veebimeetod] public int ConvertToFarenheit (int Celsius) {int f = 0 f = (Celsius * 9/5) + 32 tagastab f}

Pärast seda veebiteenuse käivitamist saame alloleva lehe:

lingitud loendi rakendamine punktis c

See hõlmab meetodeid, mida me veebiteenuses paljastame, ja ka link teenuse kirjeldusele, mis on WSDL-fail.
Veebiteenuse testimiseks klõpsake alloleva lehe saamiseks meetodil. Andke parameetri väärtus ja klõpsake käsku Käivita.


Veebiteenuse väljund saadakse järgmiselt:

Vaatame nüüd, kuidas tarbime oma rakenduses loodud veebiteenust.
1. Paremklõpsake oma projektis viidetel> lisage teenuse viide

Nagu on toodud alloleval ekraanipildil:
1. Sisestage aadressiks teenuse kirjeldaja või WSDL-faili URL. Ja klõpsake nuppu mine.
See leiab meie loodud veebiteenuse.
2. Klõpsake nuppu OK

Lahendusuurijas näeme, et viidete alla luuakse teenuse viite kataloog. See sisaldab kausta, mis sisaldab kõiki faile, mis on seotud veebiteenuse tarbimisega

Siin on ServiceReference1 meie loodud veebiteenus.
Teenuses ServiceReference1> Reference.svcmap> reference.cs on loodud puhverserver (WebService1SoapClient), millega saame helistada meie veebiteenuses määratletud meetoditele.

Selle kasutamiseks meie rakenduses:
1. Looge puhverserveri klassi objekt.
2. Helistage puhverserveri objekti kaudu veebiteenuses saadaolevatele meetoditele.

süsteemi abil System.Collections.Generic, kasutades System.Linqi System.Webi abil System.Web.UI abil System.Web.UI.WebControls abil ServiceConsumeApp1.ServiceReference1 kasutades ServiceConsumeApp1.ServiceReference1 nimeruumi ServiceConsumeApp1 {avalik osa klass Webeborm1: System. UI.Page {kaitstud void btnConvertRates_Click (objekti saatja, EventArgs e) {WebService1SoapClient fn1 = uus WebService1SoapClient () TextBox2.Text = fn1.ConvertToFarenheit (Convert.ToInt32} (TextBox1.Text)

Rakenduse käivitamisel kuvatakse väljund järgmiselt, kui oleme oma tulemuse kuvamiseks vastavad vormid veebivormi paigutanud.

Nii loome ja tarbime .NET-is veebiteenust.

Eespool nimetatud toimingutega saate luua .NET-is palju veebiteenuseid. Nendele veebiteenustele pääseb juurde mis tahes keeles ehitatud rakendusega. Veebiteenused käsitlevad seega erinevate rakenduste vahelisi suhtlusprobleeme ja osutavad reaalsele lahendusele.

Kas teil on meile küsimus? Palun mainige seda kommentaaride jaotises ja võtame teiega ühendust.

Seonduvad postitused: