Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás.

Hasonló előadás


Az előadások a következő témára: "OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás."— Előadás másolata:

1 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

2 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

3 V1.03 OE-NIK HP Webszolgáltatás Szoftverkomponens, amely hálózaton keresztül szolgáltatásokat nyújt –Általában nagyobb rendszerek adott feladatot ellátó része –A felhasználó (legtöbbször egy másik alkalmazás) számára fekete dobozként viselkedik –Jól meghatározott interfészeken keresztül érhető el Előnyei –Szabványos internet protokollokon keresztül érhető el –XML-en alapuló, nyílt szabványokra épül –Rendszertől, nyelvtől és megvalósítástól független –Leírható, közzétehető, felkutatható

4 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

5 V1.05 OE-NIK HP Szolgáltatásközpontú rendszerek A webszolgáltatások fejlődésének korai szakaszában létrejött minta –Serivce-oriented Architecture, SOA –A szabványok és protokollok ezen minta alapján jöttek létre Szolgáltatásjegyzék Szolgáltatást igénybe vevő Szolgáltató Keres Közzétesz Szolgáltat Igénybe vesz

6 V1.0 Windows Communication Foundation Elosztott rendszerek készítéséhez kifejlesztett API A korábbi, egymástól független elosztott technológiákat integrálja –XML-webszolgáltatások, DCOM,.NET remoting, stb. –Tehát része az XML-webszolgáltatás A.NET 3.0-ban jelent meg A következő alkalmakon lesz róla szó részletesen 6 OE-NIK HP Kliens alkalmazásWCF-hoszt ProxyWCF-szolgáltatás

7 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

8 V1.0 Felderítés A szolgáltatását a készítő közzéteheti egy jegyzékben A jegyzékben a szolgáltatást igénylő kutathat UDDI: Universal Description, Discovery and Integration –Webszolgáltatások jegyzéke –Több szempont szerint kereshető (szolgáltatás, cégnév, telephely) –Lehet nyilvános, vagy cégen belüli DISCO: a discovery (felfedezés) szóból –A Microsoft megoldása szolgáltatások hirdetésére 8 OE-NIK HP Felderítés UDDI, DISCO Leírás WSDL Üzenet SOAP Átvitel HTTP, SMTP, …

9 V1.0 Leírás Ha az igénylő megtalálta a megfelelő szolgáltatást, tudnia kell, hogy –hol, és milyen néven érhető el a szolgáltatás, –milyen bemeneti paramétereket vár, –mit ad vissza. WSDL: Web Services Description Language –A kérés és a válasz leírását adja meg 9 OE-NIK HP Felderítés UDDI, DISCO Leírás WSDL Üzenet SOAP Átvitel HTTP, SMTP, …

10 V1.0 Üzenet Az üzenetet el kell küldeni a szolgáltatónak, ami az adatokat feldolgozva válaszüzenetet küld SOAP: Simple Object Access Protocol –Üzenetek küldésére használt protokoll Az eddigi protokollok és szabványok az XML (Extensible Markup Language) nyelven alapulnak 10 OE-NIK HP Felderítés UDDI, DISCO Leírás WSDL Üzenet SOAP Átvitel HTTP, SMTP, …

11 V1.0 Átvitel Az üzeneteket át kell vinni a hálózaton keresztül a szolgáltató és a szolgáltatást igénybevevő között A SOAP független az átvitel típusától A legtipikusabb a HTTP (Hypertext Transfer Protocol) Ha a kérések és a válaszok összhangja nem fontos, akkor az SMTP (Simple Mail Transfer Protocol) is kiváló eszköz a SOAP üzenetek továbbítására 11 OE-NIK HP Felderítés UDDI, DISCO Leírás WSDL Üzenet SOAP Átvitel HTTP, SMTP, …

12 V1.0 Webszolgáltatások megvalósítása.NET-ben 12 OE-NIK HP SOAP IIS/ASP.NET TCP/IP HTTP TCP/IP SOAP Proxy osztály Fizikai kapcsolat Ügyfél- alkalmazás Web- szolgáltatás Logikai kapcsolat

13 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

14 V1.0 Általános ismeretek Egy webszolgáltatás felhasználója bármilyen típusú program lehet ( konzolalkalmazás, Windows alkalmazás, web-alkalmazás… ) A felhasználó nem kell hogy ismerje a szolgáltatás megvalósításának részleteit A kérés és a válasz protokollját, valamit az üzenet struktúráját a WSDL leíró nyelven megadott dokumentum tartalmazza Az alkalmazásfejlesztő környezetek általában képesek létrehozni egy un. proxy osztályt (ügyfélcsonkot) 14 OE-NIK HP

15 V1.0 A proxy osztály (ügyfélcsonk) Elkülöníti a SOAP és a hálózati protokollokkal kapcsolatos rétegeket az alkalmazástól Egy hagyományos osztály, amely visszatükrözi a webszolgáltatás működését Mindenegyes proxy osztálybeli metódus bemeneti paraméterei és visszatérési értéke megegyezik a vele azonos webszolgáltatásbeliekkel A fejlesztő a szolgáltatás meghívását és a válasz fogadását a proxy osztály metódusán keresztül végzi, nem szükséges ismernie az egyéb szabványokat és protokollokat 15 OE-NIK HP

16 V1.0 Webszolgáltatás felhasználása.NET-ben Proxy osztályt legegyszerűbben úgy kapunk, ha a szolgáltatás elérhetőségét szolgáltatás referenciaként a projekthez adjuk Használható az svcutil.exe is. –Az Add Service Reference menüpontban –Írjuk be a szolgáltatás címét, kattintsunk a Go gombra –A webreferencia nevének megadás utána pedig az OK gombra –A Reference.cs fájlban található a proxy osztály, amely a projektnév.referencianév névtérben helyezkedik el A proxy osztály metódusait meghívva kapjuk meg az eredményt –Az eredmény általában string típusú és XML formátumú –Ezt Xdocumentté konvertálhatjuk, és a tanult LINQ to XML technológiával haszálhatjuk 16 OE-NIK HP

17 V1.0 Webszolgáltatás felhasználása.NET-ben 17 OE-NIK HP

18 V1.018 OE-NIK HP Feladat A Magyar Nemzeti Bank árfolyam szolgáltatását használva jelenítsük meg az aktuális árfolyamokat. –A szolgáltatás elérhető itt: –Leírása itt: ikai_idosorok/mnbhu_arfolyamok/napiarfolyamok/mnbhu_webservice/arfol yam_lekeres.pdf A hosszú gépelés helyett oldalon írjuk a keresőbe: „webszolgáltatás” Ötletek: –Készítsük el a szolgáltatás referenciát –Példányosítsuk a proxy osztályt –Hívjuk meg a GetCurrentExchangeRates metódusát –Az eredményből a tanult XML-kezelő technikákkal az adatok kiszedhetők –Az adatokat soronként egy DataGridView-ban helyezhetjük el

19 V1.019 OE-NIK HP Megoldás

20 V1.020 OE-NIK HP Feladat 2. Kérdezzük le, hogy milyen napokon és milyen deviza árfolyama kérdezhető le –A devizanemeket egy comboBoxban, a napokat egy DateTimePickerben jelenítsük meg Megoldás: –A GetInfo metódus használható.

21 OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás felhasználása aszinkron metódushívással

22 V1.0 A szinkron metódushívás A proxy osztály generálásánál beállíthatjuk, hogy aszinkron módon hívható metódust generáljon –Add Service Reference -> Advanced… -> Generate asynchronous operations Ilyenkor minden metódushoz megtalálható –Egy metódus …Async névvel –Egy esemény …Completed névvel A metódust meghívva, az esemény kiváltódik annak befejeződésekor Az eredmény az e.Result tulajdonságban található 22 OE-NIK HP

23 V1.023 OE-NIK HP Feladat 3. Kérjük le a felhasználó által megadott napon a megadott deviza árfolyamát –Figyelem, nem minden nap volt minden pénznem. (Pl. ATS már nincs, EUR régebben nem volt.) –Az eredményeket egy másik DataGridViewban jelenítsük meg. –Az adatok lekérése aszinkron metódushívással történjen. Megoldás: –A GetExchangeRates metódus használható. –A kezdő és a végső dátum ugyanaz.

24 V1.0 Megoldás Generáljunk egy új, aszinkron metódusokat tartalmazó proxy osztályt Példányosítsuk, és iratkozzunk fel a GetExchangeRatesCompleted eseményére Hívjuk meg a GetExchangeRatesAsync metódusát 24 OE-NIK HP

25 V1.0 Megoldás 25 OE-NIK HP

26 V1.026 OE-NIK HP Irodalomjegyzék (alapismeretek) Wrox Author Team, Joseph Bustos, Karli Watson Beginning.NET Web services using C# John Sharp Visual C# 2005 lépésről lépésre

27 V1.027 OE-NIK HP Irodalomjegyzék (magasszintű ismeretek) Keith Ballinger.NET Web Services: Architecture and Implementation

28 OE-NIK HP

29


Letölteni ppt "OE-NIK HP Haladó Programozás A webszolgáltatás fogalma Szolgáltatásközpontú rendszerek Szabványok és protokollok Webszolgáltatás felhasználása Webszolgáltatás."

Hasonló előadás


Google Hirdetések