Az új generációs Web

Ebben az áttekintésben nézzük Web-szolgáltatások - integráló technológia web-alapú alkalmazások, amely felváltja a hagyományos web-alapú alkalmazások. Kezdjük egy rövid történetet webfejlesztés, majd részletesebben beszélni szolgáltatás-orientált Web. Ezután fogalom vizsgálatára webes szolgáltatások, mint olyan, az előírásokat az ilyen szolgáltatások, - SOAP, WSDL és a UDDI, fejlesztő eszközök webes szolgáltatások, valamint megtudhatja, hogyan ez a koncepció támogatja a Microsoft Visual Studio.NET.

Genesis a Web

Kezdetben a világhálón hálózata dokumentumokat. Web-szerverek kommunikálnak az ügyfelekkel HTTP (Hypertext Transfer Protocol), és információt küld formájában hipertext dokumentumok, amelyek által létrehozott eszköz a HTML (Hypertext Markup Language). Ezeket a dokumentumokat jelennek meg a böngészőben, és tartalmaz hivatkozásokat más dokumentumokat. Ez elég volt, hogy megfeleljen az alkotók a webes kérések - tudósok, akik a szükséges eszközök cseréjére vonatkozó különböző dokumentumok: a kutatási eredmények, laboratóriumi jegyzőkönyvek, jelentések stb Így Web alakult ki, mint egy dokumentum-orientált hálózat.

A fő különbség a szokásos web-szerver alkalmazás a szerveren, hogy az utóbbi nem egyszerűen csak vissza a dokumentumot, és képes feldolgozni felhasználói kérések és tartalmazza a kódot, amely megvalósítja az üzleti logikát. Jellemzően alkalmazás szerverek dokumentumok létrehozására dinamikusan függően a felhasználó által megadott paraméterek. Azt is meg kell jegyezni, hogy a használata alkalmazás szerverek lehetővé teszi, hogy hozzon létre skálázható megoldásokat, amelyek egyszerre szolgálják a nagy tranzakciók száma.

A megjelenése a különböző mobileszközök vezettek arra a tényre, hogy ahelyett, hogy a hagyományos böngészők, sok kereskedelmi web alapú alkalmazások most amellett, hogy a HTTP protokoll támogatása és protokoll WAP (Wireless Access Protocol) és képesek visszatérni információkat nem csak szabványos HTML, hanem a normák, amelyek megfelelnek a felhasználók számára, hogy hozzáférést szolgáltatások mobil eszközökön keresztül, - WML (Wireless Markup Language).

Természetesen az e-kereskedelem nem lehet kizárólag egy egyszerű tranzakció-feldolgozás - a következő logikus lépés a fejlesztés a web az integráció az üzleti folyamatok különböző cégek. Így fényében egy szolgáltatás-orientált Web jelenik meg. Ez alapján két, viszonylag új technológiák - SOAP (Simple Object Access Protocol) és az XML (Extensible Markup Language). E forgatókönyv alapján Web áll, egy sor alkalmazás szerverek információcsere XML formátumban a SOAP protokoll segítségével.

Szolgáltatás-orientált Web egy web-service - egy sor logikailag összetartozó funkciók is okozott a szoftver az interneten keresztül. Információ, hogy milyen funkciók biztosítja a Web-service, a WSDL dokumentum (Web Service Description Language), és segítenek megtalálni a meglévő web szolgáltatások alkalmazását tervezik a speciális regiszterek, amelyek kompatibilisek a specifikáció UDDI (Universal Description, Discovery and Integration).

Szolgáltatás-orientált Web

Web-szolgáltatások alkalmazás integrációs technológia, amely felhasználható az interneten. Példaként lehetséges használatát Web-szolgáltatások vizsgálni utazás megtervezéséhez. Általában egy ilyen helyzetben szükség van: egy rendelést a repülőjegy, szállás foglalás, autóbérlés, és esetleg a használata a szolgáltatás a helyi cégek szervez túrákat.

Hagyományosan, az internet felhasználásával, akkor látogasson el a szálloda vagy légi hálózat, szerver, szerver szállodák, autókölcsönzők és a vállalati szerver szerver, amely specializálódott szervez túrákat a kiválasztott helyen. Mindezek az intézkedések is hosszú időt vesz igénybe, mielőtt eléri a célt. És miközben sem az érintett társaságok nem fogja tudni, milyen tervei vannak, és ezért nem képes optimalizálni az idejét. A probléma az, hogy a vállalatok szakosodott bizonyos területeken - levegő, hotel, autókölcsönző, stb a legtöbb esetben zárva vannak magukat, és használja a saját adatok tárolására és prezentációs eszközök.

Sokkal kényelmesebb lenne az alkalmazás futtatásához, ami elvenni a szükséges információkat, és teljesítik az összes rutin tevékenységek - repülőjegy foglalás, szállásfoglalás, stb - automatikusan, az Ön közreműködése nélkül. Hogy ez lehetséges, akkor használja a web-szolgáltatásokat. Nézzük meg, mi fog változni ebben az esetben.

Tegyük légitársaság biztosít webes szolgáltatás, amely lehetővé teszi az alkalmazások listájának lekéréséhez járatok a két város között a megadott időpontban. Ebben az esetben nem kell a kapcsolatot a légitársaság weboldalán, és adja meg a különböző keresési feltételeket - az összes szükséges információ egyetlen XML-dokumentumot. Most tegyük fel, hogy a légitársaság, szálloda-és autókölcsönző nyújtó ügynökség Web-szolgáltatások, amelyek lehetővé teszik szoftver a jegyet, könyv szállodai szobák és autóbérlésre. Ebben az esetben, akkor is össze az összes hívás ezen szolgáltatások egyetlen alkalmazás, amely képes minden rutinmunka felhasználói beavatkozás nélkül.

Azonban ez a funkció egy új osztályt a web-alapú alkalmazások nem ér véget. A alkalmazás, például periodikusan A web-service légitársaságok, hogy meghatározza a helyzetét a repülési késedelem esetén értesíti a szállodai szolgáltatások, kölcsönzés szolgáltatások, stb kiterjeszteni a foglalás.

Eltekintve a nyilvánvaló javítja az ügyfélszolgálat használata Web-szolgáltatások számos más előnye van. Például, ha egy autókölcsönző iroda tudja, hogy a járat késik, akkor rugalmasabb, hogy dobja a gépkocsik. Mivel az alkalmazottak száma Web-szolgáltatások képesek leszünk látni bonyolultabb példák. Azonban meg kell jegyezni, hogy a bevezetése a Web-szolgáltatások fogalma nem csupán felülvizsgálatát számos üzleti szabályok és minták közötti kölcsönhatás iparágak és szektorok egy iparág, hanem javítja a biztonságot az adatcsere.

Figyelembe véve a gyakorlati alkalmazását Web-szolgáltatások fordulunk alapjául szolgáló szabványok ezeket a szolgáltatásokat.

Szabványok Web-szolgáltatások

Mint már tudjuk, a web-alapú szolgáltatások Internet-szabványoknak. Ezek a szabványok határozzák protokollokat és nem a módját azok végrehajtását. Ez a megállapítás a legfontosabb, hogy internet sikerét - egyetlen társaság sem tudja befolyásolni internetes szabványokat, és saját maguk a játékszabályok. Például a web-szolgáltatások szabványok által közösen kifejlesztett cégek, mint az IBM, a Microsoft, Ariba, és mások, és megvitatták bizottság World Wide Web Consortium (W3C).

Web-alapú szolgáltatások három fő webes szabványok:

  • SOAP (Simple Object Access Protocol) - a protokoll üzeneteket küldeni HTTP-n keresztül, és egyéb internetes protokollok;
  • WSDL (Web Services Description Language) - nyelven leírni szoftverillesztőkkel Web-szolgáltatások;
  • UDDI (Universal Description, Discovery and Integration) - a szabvány indexelő webes szolgáltatásokat.

Ábra. 1. megmutatja, hogy ez a három szabványos kölcsönhatásban vannak egymással.

Alkalmazás szerverek letéteményesei Web-szolgáltatások, és azokat elérhetővé a HTTP GET protokoll HTTP POST és a HTTP SOAP.

A következő részekben nézzük meg a három fő webes szabványok, amelyek alapján SOAP Web-szolgáltatások, WSDL és a UDDI, részletesebben.

SOAP - Simple Object Access Protocol

SOAP - a szabvány üzenetek küldésére és fogadására az interneten keresztül. Kezdetben a protokollt a Microsoft által javasolt, mint azt a távoli eljáráshívás (RPC, Remote Procedure Call) HTTP, és a specifikáció a SOAP 1.0 (Userland, Microsoft, Developmentor) szoros kapcsolatban állnak a Component Object Model. Az IBM és más cégek, köztük a Lotus, amelyek hozzájárultak a fejlesztés a protokoll és a szokásos küldtek a W3C bizottság.

A SOAP specifikáció definiál egy XML «boríték” az üzenetek továbbítására, eljárás kódoló program adatstruktúrák XML formátumban, valamint a kommunikációs eszközök HTTP-n keresztül.

SOAP-üzenetek két típusa van: a kérelem (kérelem) és válasz (Response). A kérés hatására a távoli objektum módszer, a válasz visszaadja az eredményt a jelen eljárásban. Ábra. A 2. és 3. példák kérés és válasz SOAP formátumban.

SOAP specifikáció meghatározza egy kódolási forma, ami viszont meghatározza az adatok XML formátumú.

WSDL - Web Services Description Language

Egyes nyelvek javasoltak leírni ezt az információt. Egyikük a nyelv Service Description Language (SDL), a Microsoft által kifejlesztett, és benne van az első változatát a Microsoft SOAP Toolkit. Az IBM átdolgozta a leírásban és használatával leírások hálózaton elérhető szolgáltatás Specification Language (NASSL), megjelent NASSL Toolkit részeként SOAP4J. Ötletek végre NASSL, befolyásolta a SOAP Szerződés nyelvspecifikáció Language (SCL), a Microsoft által javasolt. Jelenleg a két műszaki (NASSL és SDL / SCL), valamint a javaslatok más cégek elszámolni a WSDL leírás. A leírás, az IBM és a Microsoft üzleti logika futó specifikáció Web Services Flow Language (WSFL) nyelvet.

Ábra. A 4. ábra egy csontváz service description language WSDL.

Mint látjuk, a szolgáltatás leírásának egy XML dokumentum több elemből álló, többek között a leírás a névteret (namespace) típusainak leírása és elemei, hozzászólások, kikötők, valamint a lehetséges műveleteket - kérések és válaszok.

A fájl tartalmazza a szolgáltatás leírásának elég átfogó dokumentum, így létrehozni lehetővé kell tenni, hogy az automatikus generátorok szerepelnek a fejlesztési eszközök.

UDDI - Universal Description, Discovery and Integration

A feladat UDDI - olyan mechanizmust kimutatására web-szolgáltatásokat. UDDI határoz cégnyilvántartás, amelyben Web-szolgáltatók regisztrálhat szolgáltatásokat, és a fejlesztők -, hogy törekedjen a szolgáltatásokat, amelyekre szükségük van. , Az IBM, a Microsoft és a Ariba hoztak létre saját UDDI-regiszterek (hamarosan ezeket a regisztereket integrálni fogják Web-nyilvántartás), amelyek közül az egyik a fejlesztők regisztrálni Web-szolgáltatás, amely után az adatok automatikusan replikálódnak más nyilvántartások (5. ).

Business Service - egy osztály a szolgáltatások egy adott iparág vagy szolgáltatás. Minden ág tartozik egy bizonyos eleme a gazdasági társaság.

Együtt Binding Sablon és Technológiai modell határozza meg a web-szolgáltatást. Technology modell tartalmaz egy absztrakt leírása, de kötelező érvényű Template - adott szolgáltatás részletes leírása. Minden eleme a Binding sablon tartozik egy bizonyos eleme Business Service, de néhány elem Binding Template utalhat egyik eleme Technology modell.

UDDI Business Registry maga SOAP Web-szolgáltatások. Ez támogatja a műveleteket a létrehozás, módosítás, törlés és visszakeresését elemek mind a négy típus a fentiekben tárgyaltuk.

fejlesztési eszközök

Figyelembe véve a három fő webes szabványok, melyek alapján Web-szolgáltatások, - SOAP, WSDL és a UDDI, most már tudjuk, hogy kellően összetett létrehozásához szükséges leírni Web-service XML-dokumentumokat. Ezt a munkát egy speciális fejlesztő eszközök, amely lehetővé teszi a fejlesztők, hogy összpontosítson az üzleti logika által létrehozott szolgáltatás helyett az alacsony szintű végrehajtásának részleteit. A legkedveltebb jelenleg fejlesztési eszközök Web-szolgáltatásokat kell említeni Microsoft SOAP Toolkit és az IBM XML és a webes szolgáltatások Development Environment (WSDE).

Az alábbiakban nézzük egy másik módja annak, hogy hozzon létre Web-szolgáltatások - Microsoft Visual Studio.NET, amely hamarosan a fő eszköze a fejlesztőknek megoldások a Microsoft .NET platform.

Web-szolgáltatások a Microsoft Visual Studio.NET

Ahhoz, hogy hozzon létre egy webes szolgáltatást szerszámok Microsoft Visual Studio.NET tegye a következőket:

  1. Indítsa el a Visual Studio.NET 7.0.
  2. Végrehajtja a parancsot a Fájl | új | A projekt (vagy válassza ki a parancsot a Create New Project a kezdőoldalon VS kezdőlap).
  3. A panel Új projektek kiválasztásához Visual Basic Projects, a sablonok ablaktábla kiválasztásához Web Service (6.).
  4. Kérdezd meg a szolgáltatás nevét, és nyomjuk meg az OK.

Ennek eredményeképpen megkapjuk a szolgáltatást csontváz (lásd a kódot, nyomja meg a jobb egér gomb):

Microsoft Visual Studio.NET és hozzon létre SDL-fájlt, amely tartalmazza a leírást a Web-szolgáltatás, és a DISCO-fájlt a regisztrációs és a felfedezés szolgáltatásokat.

Példaként hozzon létre egy webes szolgáltatást, amely elvégzi a pénznemek közötti átváltást. módszer végrehajtását Usd2Rub - átalakítás a dollár értékét az összeget a rubel - az alábbiakban mutatjuk be:

Ennek eredményeként, akkor kap egy tesztoldal létre Visual Studio.NET (7.).

Ez az oldal tartalmaz egy leírást a webes szolgáltatás, valamint egy listát a kidolgozott módszereket is. Például, a leírás Usd2Rub ábrán látható eljárás. 8.

Beírja a bemeneti vonal bármely összeg és rákattint Invoke gombra, hívjuk a Web szolgáltatás, a módszer a megadott paraméterekkel, és kap a következő eredmény, az XML dokumentum:

Ahhoz, hogy indítsa el a web-szolgáltatás az alkalmazás használja a következő URL:

Megjegyezzük továbbá, hogy az eljárás neve után megadott „/” karaktert, és nyomás - mint rendszeres lehetőséget URL-kódolt karaktersorozat.

következtetés

Ebben az áttekintésben, néztük Web-szolgáltatások - egy új technológia integrálása web-alapú alkalmazások. Röviden beszélt a történelem, a Web, ismeri a szolgáltatás-orientált Web tárgyalt fogalma Web-szolgáltatások szabványok és leírják őket. Mi is bevezette a fejlesztési eszközök Web-szolgáltatások és figyelembe vette, hogy a Web-szolgáltatások fogalma támogatja a Microsoft Visual Studio.NET.